2012-05-12 24 views
4

我正在尋找關於如何鏈接到框架的深入解釋。在構建過程中的鏈接階段會發生什麼情況與運行時發生了什麼?如何特別鏈接不同於所需鏈接的框架?有沒有人知道一篇關於解釋這篇文章的文章?鏈接到框架如何在iOS中工作?

+0

Xcode使用[Mach-O鏈接器](http://en.m.wikipedia.org/wiki/MachO) – CodaFi

+0

我也對鏈接​​'Required'和'Optional'庫的作品感興趣。我們正在使用一個外部圖書館,他告訴我們我們需要將AdSupport添加爲「可選」。他們說,如果我們將它添加爲「必需」,則應用程序會在iOS 5.x上崩潰,但我在iOS 5.x設備上嘗試將它添加爲「必需」,並且它可以正常工作。 –

+1

這裏有一個很好的解釋: http://stackoverflow.com/questions/16922013/what-does-it-mean-to-weak-link-a-framework/28597877#28597877 – HenryRootTwo

回答

0

很好沒有什麼是弱鏈接和強鏈接的關係。

強弱引用變量。看到Apple Documentation

而且連接的內置庫和定製庫different.Also靜態庫,只能建立在iPhone和沒有動態庫鏈接。

如果您正在討論編譯器級別的庫綁定,那麼Apple肯定會指導您完成這一點(編譯器級別的鏈接和綁定對於幾乎所有的編譯器都是一樣的,並且超出了本討論的範圍)。你已經改變了頭部搜索路徑,將它添加到目標,添加依賴等,這裏有一個example to create and link static library

當你第一次編譯代碼時,編譯器引用靜態庫和頭文件中的已編譯類,它不會每次都編譯,除非它有變化。

+0

對不起,我在這裏的不同背景下使用「弱」和「強」。我相信XCode現在將其稱爲「可選」和「必需」。蘋果的文檔談到了構建Mac應用程序時的「弱」鏈接,但我認爲他們的文檔沒有更新(https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPFrameworks/Concepts/) WeakLinking.html)。我通過使用術語「必需」和「可選」來澄清我的問題。 – pbx