iOS-關於Xcode中-ObjC、-all_load、-force_load的用法
最近在做一個專案的時候,需要使用到一個第三方庫,這個庫的使用嚮導裡面特別說明,在新增完該庫後,需要在Xcode的Build Settings下Other Linker Flags裡面加入-ObjC標誌,這個標誌以前沒使用過,所以我就專門研究了一下它的作用。
關於-ObjC
這個flag告訴連結器把庫中定義的Objective-C類和Category都載入進來
這樣編譯之後的app會變大(因為載入了其他的objc程式碼進來)
但是如果靜態庫中有類和category的話只有加入這個flag才行
關於-all_load和-force_load
在64位ios應用環境下,由於連結器的一個bug,在靜態庫中只有category沒有對應的class定義時,-ObjC標誌會失效。這時可以使用-all_load強制載入所有目標檔案,或者使用-force_load指定載入某一個包。
在Xcode4.2之後,這個連結器bug已經被修復,因此-all_load 和 -force_load標誌都不再需要了。在必要時新增-ObjC即可。
相關文章
- Xcode裡-ObjC, -all_load, -force_loadXCodeOBJ
- -Objc -all_load -force_loadOBJ
- vue中 關於$emit的用法VueMIT
- 關於JavaScript中arguments的用法JavaScript
- 關於C#中async/await的用法C#AI
- 專案中關於解構的常用用法
- IOS-如何鎖定Xcode的API標頭檔案iOSXCodeAPI
- 關於oracle with as用法Oracle
- 關於AI、關於chatGPT的幾十種用法AIChatGPT
- 關於mybatis中的resultType與resultMap用法及誤區MyBatis
- Shell 中 $ 關於指令碼引數的幾種用法指令碼
- ObjC中的TypeEncodingsOBJEncoding
- PHP中關於foreach的簡單的用法總結PHP
- iOS- 關於AVAudioSession的使用——後臺播放音樂iOSSession
- 關於linux的test用法Linux
- 關於lag函式的用法函式
- 關於Xcode10中libstdc報錯問題的解決XCode
- 關於在Xcode的OC工程中相對路徑失敗的原因XCode
- [轉]關於oracle with as用法Oracle
- 關於Linux中“!”你不知道的驚歎用法Linux
- 關於 Express API app.use 中的 path 引數用法ExpressAPIAPP
- 關於git分支的一些用法(持續更新中…)Git
- 近期關於 Xcode 10 和 CocoaPods 的 bugXCode
- xcode9 關於去除Block警告XCodeBloC
- 關於Python的super用法研究Python
- 關於JDBC用法的練習 (轉)JDBC
- 關於SHOW_SPACE()工具的用法
- java中this關鍵字的用法Java
- 關於 lambda 在 WebDriverWait () 中的用法實在不明白WebAI
- 摘-- 關於在函式或過程中 ref cursor 的用法函式
- ObjC中Category的原理簡析OBJGo
- js中關於單引號和雙引號的一點用法JS
- asp.net中關於雙引號和單引號的用法ASP.NET
- 關於angularJS的一些用法AngularJS
- css關於/deep/的解釋和用法CSS
- 關於sed的用法。 - V2EXV2EX
- oracle面試題[關於case when的用法]Oracle面試題
- 關於SHOW_SPACE()工具的用法(轉)