我正在使用Matt Gallagher的Audio Streaming Project。我下載了代碼/項目,它運行/編譯/鏈接就好了。iPhone連接器錯誤(AudioStreamer)
問題是當我嘗試將AudioStreamer類集成到我自己的項目中時。我添加了所有必要的框架並檢查了項目設置,以確保它們儘可能匹配Matt的項目。
我還沒有添加任何Matt的代碼(除了AudioStreamer類)。我現在所要做的就是定義這個函數:
- (void)createStreamer {
streamer = [[AudioStreamer alloc] initWithURL:audiourl];
}
如果我註釋掉該函數中的唯一行,項目編譯/鏈接正常。如果我離開該行那裏我得到這個錯誤(這如果我理解正確的是一個鏈接錯誤):
"_OBJC_CLASS_$_AudioStreamer", referenced from:
objc-class-ref-to-AudioStreamer in AudioViewController.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
我GOOGLE了這個錯誤,大多數人得到它,因爲他們忘了包括一定的框架。我擁有我需要的所有框架。
有沒有人知道爲什麼會出現此錯誤的其他原因?我可能會忽略一些設置嗎?
除了在Matt的項目中設置爲arm6,arm7和在我的i386上設置的構建體系結構外,大多數項目設置都是相同的。我嘗試編譯模擬器和設備,我得到相同的錯誤。
我能想到的唯一的事情是,馬特的項目日期是2009年(很舊),所以可能在新的xcode中的默認配置中有所改變?
如果任何人都可以提供任何見解,我會很感激。
謝謝。
是的就是這樣,我剛剛通過另一篇文章發現。找到答案的關鍵是搜索「collect2:ld返回1退出狀態」而不是第一行。謝謝..我浪費了這麼多時間。我不知道爲什麼它沒有被默認設置,因爲我創建了這個類,然後複製粘貼了代碼。 – nebs 2010-08-12 20:23:48