2012-05-10 32 views
1

我正在開發一些遊戲代碼,它在Windows和Mac上都能正常工作。聲音也很完美。我使用OpenAL。我的OpenAL框架壞了,我該如何解決它? (OSX Lion)

最近我從Creative Labs安裝了OpenAL OSX安裝程序。它覆蓋了我原來的Apple OpenAL框架,現在我的項目不再編譯了(鏈接器錯誤,錯誤的架構和類似的東西)。

真正的問題是:我可以修復它嗎?我可以找到原來的Apple OpenAL框架來替換我的系統上的嗎?如果沒有,有人會如此友善地向我發送這些文件,以便將它們還原(如果可能的話)?

+0

您是否嘗試過重新安裝XCode? –

+0

@ MahmoudAl-Qudsi:剛剛嘗試過,正如我懷疑的那樣,這並不能解決問題。我認爲SDK與OS不一起安裝在XCode中。 – scippie

+0

(有人可以告訴我我的問題有什麼問題,以便它應該得到-1分) – scippie

回答

1

除了重新安裝完整的操作系統(我重新安裝了獅子升級程序,我重新安裝了xcode,手動刪除了東西,...)之後,我發現被創意安裝程序覆蓋的框架是唯一的位於/ Library/Frameworks中,而不是/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/System/Library/Frameworks

我以爲他們被符號鏈接,但它們不是。所以我只是將10.7sdk中的一個複製到/ Library/Frameworks中的一個,並且所有東西都重新生成了!

最奇怪的是,如果在我的項目中,我右鍵單擊「鏈接框架和庫」列表中的OpenAL框架,並選擇「在Finder中顯示」,我確實重定向到了sdk,但xcode似乎並沒有使用它,因爲當我從/ Library/Frameworks中刪除OpenAL.framework時,xcode顯示框架爲紅色,並且不會構建。所以xcode告訴我它使用sdk文件夾中的一個,但實際上使用/ Library/Frameworks中的一個。

我已閱讀過其他論壇(關於其他平臺,如iPhone和東西),人們有這方面的問題。 XCode告訴他們他們正在使用iPhone SDK中的框架,但實際上他們正在使用/ Library/Frameworks中的框架。

所以這一定是xcode中的一個bug。

無論如何...解決!

+0

感謝您的修復。當編譯爲10.7時,Cocos2D/Kobold2D也存在這個問題,所以我將框架從SDK複製到庫中,而Cocos/Kobold現在工作得很好。我可能已經打破了另一個應用程序,所以我保存了原始副本,但這是另一個問題。再次感謝! – alexanderpine

0

將框架添加到您的項目中。您正在編譯文件以便編譯,但您必須指定要鏈接的文件。它在/ System/Library/Frameworks /中。

相關問題