如何让基于CocoaPods的项目在模拟器中工作?

时间:2017-01-25 16:38:45

标签: ios xcode cocoapods

我第一次尝试使用CocoaPods,因为我已经继承了一个依赖于它的几个库的项目。像this one这样的文章听起来应该都是Just Work,即使在模拟器中也是如此。

但它并不适合我 - 我得到了一个"未定义的符号,用于架构i386"对于pod库中定义的每个类。此外,还有一堆ld警告沿着" ld:警告:忽略文件blah / blah / Build / Products / Debug-iphonesimulator / SocketRocket / libSocketRocket.a,文件是为存档而构建的,而不是被链接的架构(i386)"。我为每个CocoaPods库获得了其中一个。

如何让Xcode为模拟器构建pod库(或链接正确的库,如果它们正在构建)?

2 个答案:

答案 0 :(得分:4)

好的,我已经成功实现了它,但我不知道它是否需要这两个步骤:

  1. 按建议here
  2. 删除了派生数据
  3. 在Pods项目中,将“仅构建活动体系结构”更改为“否”以进行调试(已根据某些评论here的建议将其设置为“否”和“发布”)。
  4. 我知道单独的第1步没有做到......但我不知道第2步本身是否足够。当然他们俩一起为我做了伎俩。

答案 1 :(得分:0)

添加此答案,以防对任何人有帮助。

对于意外,我正在使用模拟器版本; iPhone 5不受支持。 Xcode在我切换到有效的iPhone 6 simulator之前没有给我任何迹象。当切换回iPhone 5时,Xcode抱怨说“MyApp没有iPhone 5可以执行的架构。”

这一切都是真的,我知道,但我没有想到它,因为Xcode给我的前一个错误是-lPods-MyApp丢失了。