我使用自定义的静态框架来打包我的模块,比如A、B、C...,而A是基础层,所以B&C依赖于A,它们都在A中使用了一个名为“Semaphore”的符号。
现在我将A、B、C添加到我的App“DemoX”中,DemoX只直接使用B&C,链接时出错。
已更改:DemoX 依赖于直接使用 A 的静态库“libM”。
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_Semaphore", referenced from:
objc-class-ref in libM.a
objc-class-ref in B
objc-class-ref in C
ld: symbol(s) not found for architecture i386
实际上,我使用“nm”命令来显示 A 中的符号,它有“_OBJC_CLASS_$_Semaphore”。那么,如何解决这个问题呢?
谢谢!