我太喜欢 Xcode 4.X 中的静态库了
以下是我通常做的步骤..
1)为了制作静态库,我打开Xcode,new,静态库,然后在项目中添加一些类..然后构建阶段 - >复制标头 - >在这里一一添加所有标头,然后我构建该项目
当在 ios 模拟器上运行时 -> 未创建静态库..(红色)
当在 ios 设备上运行时 - > 创建静态库..
2)使用图书馆..
我创建一个新项目,然后“将文件添加到项目”,并“根据需要复制”以下两个文件。
.a 文件(即静态库)
包含库文件头的文件夹
现在,当我尝试在项目中导入头文件时,没有出现“建议”...但我仍然编写并且它不会给出错误“找不到头文件”...
但是当我运行该项目时,它给出了如下错误:
ld:警告:忽略文件
/Users/Subodh/Library/Developer/Xcode/DerivedData/LibraryImporting_test-cbchzzjdcehzvfgwmzbvifrnrwgk/Build/Products/Debug-iphoneos/libLibraryImporting_test.a,
文件是为存档而构建的,这不是正在链接的架构
(i386):
/Users/Subodh/Library/Developer/Xcode/DerivedData/LibraryImporting_test-cbchzzjdcehzvfgwmzbvifrnrwgk/Build/Products/Debug-iphoneos/libLibraryImporting_test.a
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_LibraryImporting_test", referenced from:
objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
请指导我...指出如果在某个步骤出错...请帮助
如果有人提到我在制作库并在项目中使用它所做的所有步骤,那就更好了......这将是一个很大的帮助
问题的关键在于错误信息的这一部分:
文件是为存档而构建的,这不是正在链接的架构
(i386)
从外观上看,您已经导入了为 iPhone 设备 (ARM) 构建的库,并且您正在尝试在 iPhone 模拟器 i386 中使用它。
我建议使用 Xcode 工作区,其中静态库项目是其中一个项目,iPhone 应用程序是另一个项目。这样,Xcode 将根据需要构建用于调试/发布和设备/模拟器的库。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)