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