xcode中,在“Targets”选项下有Other Linker Flags选项,在这里能够填写xcode连接器的参数,如:-ObjC、-all_load、-force_load等。html
xcode采用的连接器为ld–GNU,ld是GNU工具链中的一个软件,主要用于将obj文件链接成可执行文件。同时你能使用本身的脚原本控制ld的行为,这是你能够经过-T选项选择你的脚本而不是默认的。能够经过xcode
1 |
|
这里要说的主要参数是ld工具的参数,也是在Other Linker Flags里经常使用到的参数。工具
1.-ObjCspa
当使用ObjC写的静态类别库(Objective-C static library that contains categories),在程序编译连接时,若是不在Other Linker Flags中填写-ObjC,每每会报错,出现”selector not recognized”。博主无力,缘由看不太懂。具体缘由请查阅xcode帮助文档。.net
-ObjC的做用是加载用ObjC实现的类、类别等全部成员。code
2.-all_loadhtm
强制连接器加载全部包含非ObjC的目标文档。blog
3. -force_loadip
加载指定的目标文档。-force_load后面须要文档路径,如:
TARGET_BUILD_DIR libB.a