可能报 duplicated symbols错误原因

2019-05-29  本文已影响0人  coding_Liu

首先我们公司的项目是用CocoaPod构建的,CocoaPod在生成项目的时候会自动在Other Link Flags配置项上打上-ObjC,而且,即使强行去除-ObjC选项也无法解决,虽然编译可通过,但是运行的时候,友盟、MJRefresh等众多库均会报错无法运行。
同时,公司的项目基于另一个分公司所提供的一个基础服务framework,这个framework具体实现未知,目前看来应该是使用c++开发,同时库必须禁用掉-ObjC选项,否则会报 duplicated symbols错误,编译都无法通过。

我们公司小伙伴是底层引用有C++库,但是在集成sharesdk分享的时候需要 在other linker flags 中添加-objc,加上之后包了很多重复文件的错误

解决方案:
使用 -force_load 对定向的静态库进行加载,不使用-objc。
参考文章:
https://segmentfault.com/a/1190000005859469 objc到底做了什么

https://blog.csdn.net/wlq861025/article/details/51888782
-force_load使用方式

上一篇下一篇

猜你喜欢

热点阅读