Ios 使用同一第三方库时复制符号
我创建了一个静态库,它在关键角色中使用AFNetworking与后端通信。在测试时,一切都很好,但当我尝试在测试应用程序上再次导入AFNetworking时,我得到了大量重复符号错误Ios 使用同一第三方库时复制符号,ios,objective-c,shared-libraries,linker-errors,duplicate-symbol,Ios,Objective C,Shared Libraries,Linker Errors,Duplicate Symbol,我创建了一个静态库,它在关键角色中使用AFNetworking与后端通信。在测试时,一切都很好,但当我尝试在测试应用程序上再次导入AFNetworking时,我得到了大量重复符号错误 duplicate symbol _OBJC_CLASS_$_AFURLSessionManager in: (AFURLSessionManager.o) i386/AFURLSessionManager.o duplicate symbol _OBJC_METACLASS_$_AFURLSess
duplicate symbol _OBJC_CLASS_$_AFURLSessionManager in:
(AFURLSessionManager.o)
i386/AFURLSessionManager.o
duplicate symbol _OBJC_METACLASS_$_AFURLSessionManager in:
(AFURLSessionManager.o)
i386/AFURLSessionManager.o
ld: 205 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我尝试使用-force_load选项通过添加
force_load $(SOURCE_ROOT)/testLib.a
在其他链接器标志中,而不是-ObjC,但它也没有帮助我
我需要做什么才能使用它而不需要任何黑客的东西
我在这里找到了这个解决方案
但这实际上并不实用,可能意味着要将同一个库传递到link命令中两次。也。。。您确定这是
c
而不是objective-c吗?它们是两种不同的语言,有两个不同的标记。@BrianMcFarland是的,我的意思是objective-c,我不好,是的,我知道为什么会出现这个问题,我迫切需要的是一个解决方案使用$(SRCROOT)