环信libHyphenateSDK.a和支付宝libcrypto.a冲突问题解决办法

时间:2020-12-02 13:10:10

    项目中需要继承支付宝和环信,编译的时候没有错误,但是在运行的时候报了duplicate symbol错误,从错误提示中发现新版的环信sdk中的静态库libHyphenateSDK.a与支付宝中的静态库libcrypto.a冲突了,这两个静态库中存在相同的对象文件(.o文件)。

    我的解决办法是在other linker flag中添加-force_load,并在后面配上两个静态库的路径,来按需加载静态库,然后编译、运行,即可通过。

    如下图:

 环信libHyphenateSDK.a和支付宝libcrypto.a冲突问题解决办法

    对于不太了解other linker flag的,可以看看下面的这篇文章。

   关于Xcode的Other Linker Flags中的一些参数