2013-02-26 59 views
2

我已經按照這個教程:的iOS定製的框架.framework文件

https://github.com/jverkoey/iOS-Framework

,並擁有一切的發展目標努力。即使是依賴產品也能正常工作。最後,我有一個.framework,.a,頭文件夾,並在構建後包含文件夾。文章說,你只需要在你的項目拖動.framework和包括的#include但是,我這樣做,並建立時,我得到一個鏈接錯誤:

ld: framework not found MyFramework 

請記住,我有這個工作,鏈接,等在我的依賴項目,但在該項目中,我將框架項目複製到測試項目。在拖拽.framwork之後,是否有缺少必須執行的步驟?我已經嘗試拖動.a以及沒有成功(相同的錯誤信息)。

感謝您的幫助。

回答

0

在上面的教程,你需要確保你已經刪除的文件複製構建階段是XCode的最新版本增加了。這是因爲這一步造成的。其他一切都正確添加。

2

*)我想你錯過了當你拖動或複製框架時,點擊複製框「複製項目到目標組文件夾(如果需要)」。

*)還要確保通過進入項目 - >目標 - >構建階段 - >鏈接二進制庫並添加框架來鏈接框架。

3

您確定您的框架結構完全正確嗎?既然你只是將它作爲一個子項目使用,你可能不會正確地構建框架目錄。

它應該看起來像:

MyFramework.framework  //(directory) 
    info.plist 
    MyFramework    //(symbolic link to Versions/Current/MyFramework) 
    Resources    //(symbolic link to Versions/Current/Resources) 
    Headers     //(symbolic link to Versions/Current/Headers) 
    Versions    //(directory) 
    Current    //(symbolic link to directory "A" below) 
    A      //(directory) 
     Headers    //(directory containing framework headers) 
     Resources   //(directory holding framework resources) 
     MyFramework   //(actual compiled library, really a .a file) 

在框架中的某文件不應.A結束。而作爲注意到所有這些符號鏈接必須是正確的,一個「ls -l」在你的框架目錄應該是這樣的:

drwxr-xr-x 7 kendall admin 238B Feb 19 13:36 ./ 
drwxr-xr-x 11 kendall admin 374B Feb 19 13:36 ../ 
lrwxr-xr-x 1 kendall admin 24B Feb 19 13:36 [email protected] -> Versions/Current/Headers 
lrwxr-xr-x 1 kendall admin 30B Feb 19 13:36 [email protected] -> Versions/Current/MyFramework 
lrwxr-xr-x 1 kendall admin 26B Feb 19 13:36 [email protected] -> Versions/Current/Resources 
drwxr-xr-x 4 kendall admin 136B Feb 19 13:36 Versions/ 
-rw-r--r-- 1 kendall admin 215B Feb 19 13:36 info.plist 

的info.plist的內容(這告訴鏈接什麼靜態庫的名稱該框架確實是)看起來像:

CFBundleDevelopmentRegion 
English 
CFBundleExecutable 
MyFramework 
CFBundleIdentifier 
com.pushio.pushiomanager 
CFBundleInfoDictionaryVersion 
6.0 
CFBundlePackageType 
FMWK 
CFBundleSignature 
???? 
CFBundleVersion 
1.0.0 
+0

哎,這實際上更有可能是正確的答案。 LD知道框架,因此OP已經在鏈接階段正確添加了它。這聽起來像一個破碎的框架 - 例如缺少靜態庫。 +1 – Till 2013-02-27 00:28:55

+0

我沒有任何資源,所以我擁有:MyFramework和Headers(符號鏈接)和Versions文件夾。在版本中我有A-Headers(沒有MyFramework)。我也沒有Info.plist。 – 2013-02-27 21:13:30

+0

就在一個快速提示中,我正在關注上面提到的鏈接,而不是提及如何創建版本化鏈接的鏈接。 – 2013-02-27 22:14:42