重复符号“objc”类“gtmbase64”位于:
../../tcweibosdk/libtcweibosdk.a(gtmbase64.o)
../../tbplatform.framework/tbplatform(gtmbase64.o)
重复的符号objc_元类gtmbase64位于:
../../tcweibosdk/libtcweibosdk.a(gtmbase64.o)
../../tbplatform.framework/tbplatform(gtmbase64.o)
ld:2个建筑i386的重复符号
错误:连接符命令失败,退出代码1(使用v看到调用)
这是我的错。我已经知道原因是两个lib都包含一个名为GTMBase64的类,但是这两个库不是开源的。所以我不能轻易地修改源代码。
我曾经使用“otool”命令解包这两个.a文件,发现这两个GTMBase64lib的汇编代码是不同的。最后,我不知道如何解决这个问题。

最佳答案

这个问题有几个答案。
您可以将它们分别包装在各自的包装中(请参见:https://stackoverflow.com/a/6538625/1298400
您可以使用objcopy重写它们(请参见:https://stackoverflow.com/a/6940389/1298400
您可以使用十六进制编辑器重写它们(请参见:https://stackoverflow.com/a/15347275/1298400
所有这些都是重巫术,你需要小心避免非常坏的事情。

10-07 19:54