我用Xcode创建了一个静态库,我编译了选择一个设备。
我将此添加到Xcode 4.6中的库测试项目
但在链接期间我总是有2个错误...
我遵循了本教程:Static Library iOS Tutorial
如果我下载示例代码,我会遇到同样的错误:
ld:警告:忽略文件/Users/Downloads/ICodeBlogStaticLibrarySample/MathTest/Classes/iCodeBlogsMathLibrary/libICodeMathUtils.a,文件中缺少必需的体系结构i386 /Users/Downloads/ICodeBlogStaticLibrarySample/MathTest/Classes/iCodeBlogsMathLibrary/libICodeMathUtils.a(2片) 架构i386的未定义符号: “_OBJC_CLASS _ $ _ MathFunctions”,引自: MathTestAppDelegate.o中的objc-class-ref ld:找不到架构i386的符号 clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)
答案 0 :(得分:1)
我曾经做过一个静态库,我遇到了同样的问题。 解决方案是“在设备上运行应用程序”而不是在模拟器上,它工作正常然后!!! 希望这会有所帮助...
答案 1 :(得分:1)
答案 2 :(得分:1)
您在构建项目时必须选择iOS模拟器。选择iOS设备,它应该没问题。
答案 3 :(得分:0)
阅读并尝试理解错误信息,这是一个有意义的英语短语。
未找到架构i386的符号
因此库中没有i386架构的编译代码。这意味着要么只为ARM编译(对于实际的iOS设备,如iPhone或iPad),要么为64位模拟器(x86_64)编译。使用otool
查找库中存在的体系结构。