2011-11-17 89 views

回答

2

這是我最好的猜測。發佈您在編譯時遇到的錯誤會很有幫助。

如果您使用-all_load鏈接器標誌,請將其關閉。如果您的庫要求您使用此選項,請嘗試在需要它的特定庫上使用-force_load選項。作爲絕對的最後手段,從源代碼構建可以重命名碰撞符號的庫。

下面的問題可能提供關於all_load問題更深入的瞭解:

Objective-C categories in static library

2

我就遇到了這個問題,因爲新的Facebook SDK 3.0,現在是一個靜態的框架,其中還包括SBJSON,我也有另一個靜態框架也包含同一個類。最初,我只需進入並編輯Facebook SDK的源文件並將自定義前綴應用於SBJSON類。這不再有效。

我開始變得非常沮喪,開始思考問題,這裏是我提出的解決方案。

  1. 導航到FacebookSDK.framework->版本 - >當前
  2. 開放最好的IDE編譯FacebookSDK庫文件,文本編輯會做!
  3. 搜索區分大小寫,並以「FBJson」
  4. 搜索區分大小寫,並以「FBJSON」替換「SBJSON」的所有出現
  5. 保存,清潔,編譯,好去替換「SBJson」的所有出現!

誰知道這會奏效?

注意:有人會說,爲什麼用FBJson而不是FBSBJson替代?我確定最好保持相同的字符長度以保證安全。 注意:如果您正在嘗試使用其他框架,請確保在頭文件中搜索對您正在重命名的衝突類的任何引用。在這種情況下,被重命名的類在任何頭文件中都沒有被引用。如果是的話,我會確保在頭文件中重命名它。

+0

所以一個字的答案,你重命名文件 – hariszaman