0

ld:警告:忽略文件
/Users/srm-mac10/Downloads/ICodeBlogStaticLibrarySample/MathTest/Classes/iCodeBlogsMathLibrary/libICodeMathUtils.a,文件中
缺少所需的架构 i386 架构 i386 的未定义符号:“_OBJC_CLASS_$_MathFunctions”,引用自:
objc- MathTestAppDelegate.o ld 中的类引用:未找到体系结构 i386 的符号 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

在我尝试在目标 C 中创建静态库时出现以下错误。有什么想法吗?请帮我。

4

2 回答 2

2

iOS 模拟器在系统的 CPU 上本地运行,这是一个 x86 架构。因此,您的代码需要为 x86 构建(可能已经可以工作),并且您链接到的任何库也需要为 x86 构建。

如果这是其他人提供给您的静态库(也许您购买了它?),那么您还需要请求 x86 版本并链接到它。

如果您自己构建静态库,请检查该项目的构建设置(我假设它是一个单独的项目)并确保将其配置为可以为模拟器编译。然后为模拟器显式构建库。

(我在静态库中遇到了一些奇怪的问题,其中 Xcode 4.x 无法自动构建正确的库架构,需要显式手动构建。)

于 2012-07-13T07:36:00.513 回答
-1

我认为您必须在项目构建设置的“其他链接器标志”中设置标志“-all_load”

于 2012-07-13T07:39:59.443 回答