2011-12-01 49 views
11

我的第一個iPhone應用程序已準備好使用應用程序上傳器進行提交。我想我明白,我必須去產品創建的文件:在Xcode歸檔,但是當我做我得到這個消息:Xcode - 錯誤:無法打開可執行文件.....如何解決?

error: unable to open executable '/Users/Library/Developer/Xcode/DerivedData/test-euevazxsqeehnwantvxjhqwkytxr/ArchiveIntermediates/test/InstallationBuildProductsLocation/Applications/test.app/test'

的應用程序構建和我的手機,並在模擬器上運行良好,所以請給我一些關於如何解決這個問題的建議?謝謝。

回答

9

Product>CleanProduct>Clean Build Folder(按住它的選項出現)。退出Xcode並重新打開,一切都會好起來。如果沒有,進入組織者,選擇項目,找到測試並刪除其DerivedData文件夾(重要:不是快照)。

+0

謝謝 - 我已經這樣做了,但不幸的是它沒有解決問題。該應用程序現在也不會在模擬器中運行,並且我收到了以下這些錯誤,我希望您可以提供幫助:-lPhoneGapLib找不到ld:library命令/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/clang失敗退出代碼1 – StuartB

+0

你確定你的iPhoneGapLib庫是在應用程序之前構建的嗎?聽起來像你有兩個目標 - 一個圖書館完成的應用程序。 – jrtc27

+0

我真的很抱歉(感覺有點不在我的深處!)但我不確定你的意思 - 我怎麼確定? – StuartB

2

這個錯誤是由於某些類級別的事情,當你命名類,並生成它的屬性與@synthesize的getter setter。它會生成包含屬性的get和set名稱的方法。可能你有一些包含這樣的名字的類。確切的方法是在導航器框中單擊問題導航器。然後單擊該錯誤。閱讀綠色區域。你會發現你有什麼。現在刪除那個類或者它是什麼。現在用一些不同的名字重新創建它。 prblm將被解決。

2

在我的情況下,原來這是由一個無效的庫(特別是舊版本的libz)引起的。一旦我從我的框架文件夾中刪除了它,並在目標設置的構建階段部分添加了正確的libz庫,它就像正常一樣構建。

+1

我有類似的東西,在嘗試更新它時意外移動了一個庫,所以請確保檢查您的構建階段選項卡! –

+1

+1同樣在這裏。正在搞亂圖書館的路徑,它搞砸了libGoogleAnalytics.a。刪除它,並添加它 - 等瞧! – capikaw

2

如果您的類的.m文件未列在目標的「構建階段」選項卡的「編譯源」步驟下,則可能會出現此類錯誤。通常Xcode會爲你做這件事,但有時它會丟失情節,你需要手動添加.m文件。

like

13

你也可以得到這個錯誤,如果所包含.m文件,而不是.h文件中的某個地方你的代碼。

+0

哇。正確的點。仍然想知道爲什麼Xcode沒有檢查這種東西。至少應該說「嗨,你包含.m文件而不是.h,這可能是錯誤的。」 –

0

我不得不將所有鏈接器標誌放置在主項目(workspaces)中,並且只將其留在依賴項中。

//:配置=調試 OTHER_LDFLAGS = -ObjC -M -all_load

//:配置=鬆開 OTHER_LDFLAGS = -ObjC -M -all_load

//:completeSettings =一些 OTHER_LDFLAGS

0

如果任何符號在項目中的任何位置出現重複,則會出現此錯誤。大多數連接器會發出「重複符號」錯誤,並告訴您符號的名稱以及它遇到問題的文件的名稱,但這不像Apple那樣。

Lord知道鏈接器無法真正打開文件時發生了什麼錯誤。

0

今天有同樣的問題。

Xcode構建路徑可能有點瘋狂,並且與我的libGoogleAdMobAds.a或我的libGoogleAnalyticsServices.a文件丟失了連接。

刪除它們將它們導回 - 修復。

希望我幫了忙。

相關問題