我試圖在同一個應用程序中使用FMOD和HTTPriot。 FMOD工作正常,直到我添加HTTPriot的鏈接器標誌,在這一點上,我得到了一堆鏈接錯誤,其中FMOD抱怨未定義的符號。換句話說,爲HTTPriot添加鏈接器標誌似乎會中斷FMOD庫的加載。一個庫的鏈接器標誌中斷另一個的加載
這些是在我得到的錯誤,在我構建的鏈接階段所有未來:
Undefined symbols:
"_FMOD_Sound_Lock", referenced from:
-[FMODEngine recordedSoundAsNSData] in FMODEngine.o
-[FMODEngine writeRecordingToDiskWithName:] in FMODEngine.o
"_FMOD_MusicSystem_PrepareCue", referenced from:
-[FMODEngine addCue:] in FMODEngine.o
這些鏈接標誌爲HTTPriot: -lhttpriot -lxml2 -ObjC -all_load
我說這些,以及作爲一個通道,每個指令的HTTPriot SDK這裏:http://labratrevenge.com/httpriot/docs/iphone-setup.html
我希望小號omeone可以啓發我爲什麼爲一個庫添加鏈接器標誌可能導致另一個庫加載失敗。如果我沒有這些標誌,HTTPriot和FMOD都可以在模擬器上正常工作,但HTTPriot在設備上有運行時錯誤,我假設它是因爲它的庫沒有鏈接。雖然FMOD在設備上工作正常。
我在我的構建設置中放置了標題搜索路徑和庫搜索路徑,以便XCode找到FMOD。這似乎是好的,直到我嘗試添加這些HTTPriot鏈接器標誌。我也嘗試爲FMOD庫(-lfmodex)添加鏈接器標誌,但是如果沒有它,我會得到相同的錯誤。
解決了這個問題 - 是一個笨蛋錯誤。 – trevrosen 2010-03-22 01:11:59