2016-11-09 132 views
0

我想创建一个iOS库以导入多个项目。 我试图遵循severa(很多!)教程和指南,也回答这里没有解决我的问题。使用xcode 8生成iOS库

我使用的Xcode 8.1(MacOS的山脉),并创建的lib的步骤如下:

  • 新建 - >项目 - >可可触摸静态库
  • 加我的所有源入项目

任务已经完成:

  • 我已经关掉了标志 “打造唯一的活动架构” 为NO
  • 我已经加入到“其他链接标志” - 静态-ObjC

现在推CMD + B选择模拟器作为目标

转到产品 - >选择.a->展取景器

库显示,切片是: “FAT文件体系结构:./libPhoneNumber.a是:I386 x86_64的”

下列步骤显示了如何使用该库: - 拖动.A成e xisting项目 - 拖动库的所有.H到现有的项目 - 增加了#进口“libPhoneNumber.h”(该文件存在)使用的模拟目标 我总是获得

命中CMD + B以下:

用于建筑x86_64的未定义符号: “_OBJC_CLASS _ $ _ MYPhoneNumberUtil”,从引用:在AppDelegate.o LD objc级-REF:符号(S)没有发现建筑x86_64的 铛:错误:连接命令失败并退出代码1(使用-v查看调用)

所以,现在切片x86_64显然存在。

我要疯了,似乎每个指南都不起作用。 有没有其他想法?

感谢所有

+0

您是否在目标的构建设置中有您的库的路径? (图书馆搜索路径) –

+0

我的搜索路径没问题。谢谢。如果使用new-> project-> cocoa touch静态库生成项目,我发现该库可以工作,但是如果我创建另一种类型的项目并且THAN添加静态库目标,则此目标将不会生成有效的库。任何想法为什么? –

回答

0

挖掘到它,我发现,如果该项目与新建 - >项目 - >可可触摸静态库生成的,但如果我创建另一种类型的项目,比加库工程静态库目标,这个目标不会生成有效的库。