【发布时间】:2014-04-07 16:58:42
【问题描述】:
我的项目包含两个目标,主应用程序和一个单独的测试目标。主目标构建没有问题,但测试目标失败并出现以下链接器警告:
"ld: warning: ignoring file .../libj2objc_main.a, file was built for archive which is not the architecture being linked (i386)"
这似乎是一个常见问题,并且有几篇文章讨论了解决方案,从将“仅构建活动架构”标志设置为否(或者是吗?)到使用 shell 脚本强制 Xcode 构建一个胖二进制文件。 (使用lipo 我已经确认编译后的 .a 文件只包含 x86_64 二进制文件。)当我创建一个新的测试目标并运行默认的 XCTest 套件时,一切都构建得很好,但如果我尝试添加Pods 配置文件到 Info -> Configurations 中的测试目标,然后再次运行测试,一切都失败了。这在其他项目中从来都不是问题。
我的问题是为什么这只对测试目标失败?我在常规版本和测试版本中都使用相同的架构,那么为什么 .a 在后一种情况下只是一个问题?
【问题讨论】:
-
查看answer
-
感谢您的回复,但不幸的是,这不是问题。