孤海傲月

导航

<iOS>other linker flags[转]

包含静态库时候需要在Target的Other linker flags里面加上值:-objC,-all_load,-force_load

对于64位机子和iPhone OS应用

解决方法是使用-all_load 或者 -force_load。

-all_load强迫链接器从它能看见的所有文档中加载所有的对象文件,甚至那些没有OC代码的文档。

-force_load适用于Xcode3.2+版本,它允许finer得到文档加载的控制。每一个-force_load操作必须跟着一个文档路径,文档中的每一个对象文件将会被加载。

 

-all_load就是会加载静态库文件中的所有成员,

-ObjC就是会加载静态库文件中实现一个类或者分类的所有成员,

-force_load(包的路径)就是会加载指定路径的静态库文件中的所有成员。

 

举个例子

当链接一个包含类别的OC静态库时候,将会得到一个运行时异常:"selector not recognized"。你需要设置Other Linker Flags的值为-ObjC就OK了

 

 
 
 

posted on 2014-02-13 09:45  孤海傲月  阅读(340)  评论(0编辑  收藏  举报