簡體   English   中英

使用VS重新編譯了Qt庫,為什么Qt Creator無法編譯?

[英]Recompiled Qt libraries with VS, now why won't Qt Creator compile?

我最初的目標是讓Qt Creator和Visual Studio 2008創建兼容的庫,所以到目前為止,我要做的是打開VS命令提示符,轉到我的Qt文件夾,然后運行configure.exe ,然后運行nmake重新編譯Qt。 VS的庫。 問題是現在Qt創建者將不會編譯任何東西。 編譯器輸出顯示它現在正在使用cl而不是gcc,這是我想要的,但是任何時候我嘗試編譯任何東西時,我都會收到以下警告:

:-1: warning:  unrecognized option '/MANIFEST'; ignored
:-1: warning:  unrecognized option '/MANIFESTFILE:debug\HelloQt.intermediate.manifest'; ignored
:-1: warning:  unrecognized option '/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*''; ignored

我不確定是否會有所不同,但是當我運行configure.exe我沒有設置任何命令行參數。 我注意到,在運行configure.exe時,我發現的引用使用了不同的命令行參數(盡管沒有兩個引用使用相同的參數),但是我不確定從VS命令行運行它是否足夠?本來應該手動設置一些選項。

該網站configure.exe使用了很長的命令行

configure -no-sql-sqlite -no-qt3support -no-opengl -platform win32-msvc2005 -no-libtiff -no-dbus -no-phonon -no-phonon-backend -no-webkit

盡管他似乎禁用了我的項目所需的一些選項,但他沒有從VS命令提示符下運行它。

編輯 :使用-platform win32-msvc2008參數針對configure.exe重新編譯,並且沒有區別

我的問題是,對於這些“無法識別的選項”我應該怎么做,更普遍地說,我還有什么要做的事情才能讓Qt創建者用cl編譯Qt項目?

更新因此,我嘗試重新編譯Qt庫,並在實際讀取45分鍾以上的編譯輸出后,發現nmake退出並出現錯誤。 在中止編譯過程之前,我從QNetworkReplyHandler.objFrameLoaderClientQt.obj收到八個“無法解析的外部符號”錯誤。 這似乎不會引起我一直收到的無法識別的選項錯誤,但這解釋了為什么當我將它們與Visual Studio Qt插件一起使用時,Qt庫似乎運行錯誤。 這個問題相對無關緊要,所以我在另一個問題中發布了此鏈接,以防萬一有人對這個問題有答案。

目的是確保您具有正確編譯的QTDIR。 在您的情況下,一個用於VS,一個用於gcc(如果需要兩個)。

根據下載的內容,Qt Creator使用gcc,但您可以在選項> Qt4> Qt版本下指定其他QT目錄。 路徑和版本將顯示在對話框中。

  1. 轉到VS命令行,並使用干凈的源存儲庫運行configure.exenmake 然后將此QTDIR添加到您的Qt Creator中。 我建議你先打掃干凈。

  2. 然后,確保可以從Qt命令行運行qmakenmake且沒有錯誤。 如果使用Qt安裝程序,則應該安裝Qt命令行圖標。 如果沒有,請確保設置了QTDIR環境變量,並且路徑中有%QTDIR%/bin

  3. 再次執行步驟1,但這一次不使用VS,但要確保gcc在路徑中。 再次運行configure.exe等,但在專門用於gcc的單獨目錄中。 將此版本添加到您的Qt Creator。

  4. 編譯項目時,請先運行qmake。 您可以更改Qt版本,但不要忘記運行qmake。

希望這可以幫助。

此外,請記住QT Creator不支持使用CL進行調試

-騙子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM