2010-08-12 80 views
1

我正在使用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中的默認配置中有所改變?

如果任何人都可以提供任何見解,我會很感激。

謝謝。

回答

2

這聽起來像你需要添加AudioStreamer.m到你的目標。

+0

是的就是這樣,我剛剛通過另一篇文章發現。找到答案的關鍵是搜索「collect2:ld返回1退出狀態」而不是第一行。謝謝..我浪費了這麼多時間。我不知道爲什麼它沒有被默認設置,因爲我創建了這個類,然後複製粘貼了代碼。 – nebs 2010-08-12 20:23:48