目前我正在开发一个iOS应用程序(iOS 6),我需要在其中实现一个静态库。
我使用这个成功实现了静态库tutorial http://www.icodeblog.com/2011/04/07/creating-static-libraries-for-ios/。我成功地将静态库添加到其他项目并将应用程序安装到 iPhone!。它运行成功。
但我的问题是,当我尝试在模拟器上运行它时,出现了一些错误:
"_OBJC_CLASS_$_MMPAlert", referenced from:
objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我添加了目标架构,例如:
我搜索了很多,但找不到解决方案,为什么我的库在设备上运行并在模拟器上给出错误。
请帮助我,提前致谢
您可能仅为设备架构构建了库。 iOS 模拟器不是模拟器,这意味着代码需要能够在您的 Mac 架构上运行,这与您设备的架构明显不同。
由于库是预编译的(针对特定体系结构),因此一旦您在项目中使用它,它所包含的代码就不会针对当前目标再次编译。这就是为什么您首先需要为这两种架构构建库的原因。
这个答案 https://stackoverflow.com/a/2996304/416600解释如何将两个库构建捆绑到一个方便的“胖文件”中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)