2013-09-24 85 views
25

我剛將我的舊項目升級到新的iOS 7,它已經在使用Cocoapods。我編譯並運行,在模擬器和設備上一切正常。我試圖使用Xcode存檔它,我得到以下錯誤。Xcode 5 iOS 7 CocoaPods鏈接器錯誤

ld: library not found for -lPods 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

任何想法!

UPDATE:

的吊艙項目的架構設置如下:

Standard architectures (armv7,armv7s) 

SOLUTION

的CocoaPods已經從我的項目中刪除。現在一切都很好!

+0

我遇到了cocoapods v 0.27.1的ld問題(高於0.25)。此鏈接幫助我http://stackoverflow.com/questions/6653188/xcode-4-build-succeeds-command-line-build-fails –

+3

約翰doe,是一個很好的SO,並接受功夫的答案。我們都討厭椰子樹,但他的答案仍然是正確的。 – ilteris

+1

這不是一個很好的解決方案....提取cocoapods。 – LightningStryk

回答

-3

設置豆莢結構。

單擊窗格>構建設置> Architecturs>的ARMv7,armv7s

+2

將體系結構設置爲..?架構設置爲「標準體系結構(armv7,armv7s)。仍然給出相同的確切錯誤。 –

+0

請問您是否更清楚一點?將架構設置爲哪些值?就目前而言,這個答案沒有多大幫助。 – MatthiasC

32

聽起來像是你只需要更新的CocoaPods。對於其他人誰不希望被簡單地從你的項目中移除的CocoaPods解決問題,這樣做:

  1. 檢查您的CocoaPods的版本:

    莢--version

  2. 如果這是不到0.25.0,你需要做一個更新(不要忘了「命令」如果需要的話):

    寶石更新的CocoaPods

  3. 請確保您的艙體更新:

    吊艙安裝

  4. 最後,打開你的.xcworkspace文件。

你應該很好去。

+5

A downvote and no comment?Classy。特別是考慮到這是一個完全有效的選擇,如果你不想卸載cocoapods。 – MattSenter

+2

kungfuters答案是正確的 – ilteris

+1

絕對正確!我是在0.24.0版本,它不工作,只是採取了這些步驟,現在運行良好。 –

6

我剛剛在我的工作區中解決了這個問題。在我的情況下,它與升級到iOS 7無關;相反,它與App Store提交的歸檔有關。我創建了App Store配置(發佈配置的副本),並且我試圖使用App Store配置進行存檔操作(在產品>方案>編輯方案...>存檔>構建配置下配置)。問題是我爲我的應用程序項目創建了一個App Store配置,但我沒有爲Pods項目(CocoaPods添加到您的應用程序工作區的項目)創建App Store配置。一旦我做到了這一點(再次,只是發佈配置的副本),存檔操作成功。

+0

哇,這實際上工作!謝謝你,這讓我瘋狂。應該提交給CocoaP ods,奇怪的是你必須有一個同名的配置。 – Accatyyc

+0

非常感謝,老兄!乾杯! –

4

@約翰能源部(此線程的所有者)的解決方案是正確的,你必須爲你的項目的CocoaPods首先通過運行

pod setup 

然後

pod install 
+0

@johndoe不是該線程的「所有者」,而是OP(原始人) –

+1

OP =原始海報,或者有時是原始帖子。 – theLastNightTrain

22

我有這個問題當嘗試將CocoaPods添加到現有項目時。

事實證明,CocoaPods得到Architectures設置正確,但錯過了Build Active Architecture Only設置。兩者必須與主項目完美同步,否則在構建真實設備時會失敗(至少如果您獲得了多個ARM拱門(通常是這樣做的)(armv7,armv7s和現在的arm64))。

爲我解決了這個問題,希望這可以幫助他人解決類似的問題。

+0

好的電話,這是我的問題。特別是因爲我有一個32位版本的我的應用程序(感謝,第三方依賴!)在64位iPad上運行。 10個互聯網爲你服務! – RyanWilcox

+3

這實際上幫助我解決了我的問題。我所要做的就是在我的發行版配置中爲「僅構建主動架構」說'是'。 – EdGs

2
  1. 嘗試刪除從構建設置arm64 - >架構(ARMv7的,armv7s)
  2. 設置編譯主動架構只爲NO

爲我工作剛纔。

的CocoaPods版本0.34.1

0

我有不同的問題 - dublicate文件。
也許你在你的項目中也有dublicates。就像來自Pods的那些一樣,另一個是在開始使用Cocoapods之前您並未刪除的舊文件。
仔細檢查它們。