2014-09-26 24 views
0

構建完成後,我看到了這條消息。我該如何解決這個錯誤?(在QT Creator中使用FMOD)

g++: unrecognized option '-C:\Program Files\FMOD SoundSystem\FMOD Programmers API Windows\api\lib' 

我加入這個2線gui.pro文件

INCLUDEPATH += -"C:\Program Files\FMOD SoundSystem\FMOD Programmers API Windows\api\inc\" 

LIBS += -"C:\Program Files\FMOD SoundSystem\FMOD Programmers API Windows\api\lib\" 

我該如何解決這個問題?

+0

嘗試LIBS + = L 「C:/ Program Files文件/ FMOD Soundsystem的/ FMOD編程API的Windows/API/lib中/」 – 2014-09-26 12:21:58

+0

你的代碼後,我看到許多這樣的錯誤 2014-09-26 12:22:56

+0

嘗試LIBS + = -L「C:/ Program Files/FMOD SoundSystem/FMOD Programmers API Windows/api/lib /」...看起來像' - '錯過..檢查這一個參考http://doc.qt.digia.com/qtcreator-2.3/creator-project-qmake-libraries.html – 2014-09-26 12:27:37

回答

1

您需要添加包含路徑,以頭,沒有「 - 」在開始和AFAIK也沒有尾隨「\」:

INCLUDEPATH += "C:\Program Files\FMOD SoundSystem\FMOD Programmers API Windows\api\inc" 

利布斯需要開始與-L。但這還不夠!這只是爲圖書館的搜索路徑添加一條路徑。您還需要告訴鏈接器要鏈接的庫。我不知道你需要哪一種,但對於

LIBS += -L"C:\Program Files\FMOD SoundSystem\FMOD Programmers API Windows\api\lib\" -lfmod 

稱爲libfmod.a您將添加「-lfmod」靜態庫,即:還有一些其他的方法可以做到這一點。例如爲不同類型的構建添加不同的庫(調試與發佈)。 You might want to use the Qt Creator GUI for that

編輯:究竟是什麼我剛寫: http://qt-project.org/doc/qt-4.8/qmake-project-files.html#declaring-other-libraries

EDIT2:

OK,看來您的特定情況下,有可能是另一個問題。 This StackOverflow回答說,FMOD庫是使用Microsoft Visual Studio Compiler構建的,它處理與GCC不同的函數的名稱修改。所以他們說你必須改用C-API。

那是2011年。我手頭沒有該庫或Windows機器。不幸的是,他們只提供安裝程序下載,所以你必須檢查自己是否有一些自述文件或文檔可用。

+0

我做了您的解決方案。 我使用FMOD :: System_Create(); 但是<未定義的對FMOD_System_Create @ 4>的引用>錯誤消息和消息出現。 我該怎麼辦? – 2014-09-26 15:57:00

+0

「ld返回1存在狀態」表示鏈接器失敗。也許你沒有鏈接正確的圖書館。你的圖書館的文件說什麼? 同樣重要(!),MinGW/GCC工具鏈僅適用於32位系統。所以如果你的庫被編譯爲x86-64,它將無法工作。 – 2014-09-26 16:43:21

+0

我更新了我的答案。一探究竟。 – 2014-09-26 16:56:22

相關問題