Qt 4.7.4 完美動態編譯發布動態調試,以及靜態編譯發布


首先是准備工作,去QT主頁下載獨立的QT類庫安裝包以及完整QT SDK安裝包,還有QT Creator for windows 版

下載地址:http://qt.nokia.com/downloads-cn     最新是 4.7.4 版

還有一個mingw 4.4.5 靜態編譯版,用來解決mingwm10.dll、 libgcc_s_dw2-1.dll,兩個DLL依賴的問題

下載地址是:http://code.google.com/p/qp-gcc/downloads/list

四個文件分別是:

(1) qt-creator-win-opensource-2.3.1.exe   // IDE 開發框架

(2) qt-win-opensource-4.7.4-mingw.exe          // QT類庫安裝包

(3) Qt_SDK_Win_offline_v1_1_3_en.exe          // QT SDK 完整安裝包

(4) mingw-static-4.4.5-all.7z                         // mingw 靜態編譯完整版

 

准備好上面四個文件之后,就可以安裝了,安裝順序以上面的(1)--(4)的順序進行安裝

下面說一下安裝時需要注意的地方,

第一步:安裝的是 qt-creator,安裝的時候記得把它自帶的 mingw 編譯器選上(主要是為了這個 mingw 編譯器)。假如默認安裝到:C:\Qt\qtcreator-2.3.1

第二步:就是安裝 QT 獨立類庫,由於它不包含編譯器,因此在安裝的時候有個選項,要你選擇 mingw 編譯器的路徑,

             指向 C:\Qt\qtcreator-2.3.1\mingw 目錄就可以了。假如默認安裝到:C:\Qt\4.7.4

第三步:就是安裝完整版的QT SDK,默認安裝到:C:\QtSDK

 

好了,接下來就是關鍵的靜態編譯了,打開 C:\Qt\4.7.4\mkspecs\win32-g++ 目錄下的 qmake.conf 文件,

修改兩個地方:

QMAKE_LFLAGS     = 

 

修改為

QMAKE_LFLAGS          = -static -enable-stdcall-fixup -Wl,-enable-auto-import-Wl,-enable-runtime-pseudo-reloc

再將

QMAKE_LFLAGS_DLL        = -shared

修改為

QMAKE_LFLAGS_DLL        = -static

 

然后打開“開始菜單”-->“程序”-->“Qt by Nokia v4.7.4 (MinGW OpenSource)”菜單下面的 Qt 4.7.4 Command Prompt 也就是QT 命令行,

先配置編譯選項,然后再開始編譯,這是命令行提示符停留在:C:\Qt\4.7.4   路徑,輸入以下配置命令:

configure -platform win32-g++ -release -opensource-static -fast -qt-sql-sqlite -plugin-sql-sqlite -no-qt3support -qt-zlib -qt-gif-qt-libpng -qt-libmng -qt-libtiff -qt-libjpeg -no-webkit -qt-style-windowsxp-qt-style-windowsvista -nomake examples -nomake docs -nomake demos

等待配置完成后,進入 src 目錄,並進行編譯,輸入如下命令:

cd src                           // 進入源碼目錄

mingw32-make -i -k     // 進行靜態編譯

 

等待幾十分鍾后就能編譯成功,之后就可以進行第四步了。

 

第四步:把下載的 mingw 靜態編譯版的編譯器  mingw-static-4.4.5-all.7z 解壓到 C:\QtSDK\mingw 目錄,為什么?

因為我們要用第三步安裝的完整版的QT SDK中帶的 qt-creator IDE來進行開發,而不是第一步安裝的 qt-creator。

最后的設置,打開 qt-creator 之后,點擊“工具”-->“選項”對話框,點擊左邊的“Qt4”選項,就能看到IDE自動檢測到

的 qmake ,但是自動檢測的 qmake 只能生成動態編譯的程序,現在我們點擊右上角的“添加”按鈕,找到路徑

C:\Qt\4.7.4\bin ,選中該路徑中的 qmake.exe 文件,並命名為 “Qt 4.7.4 靜態編譯”,然后確定就完成了最后的設置。

 

現在我們來新建一個Qt Gui 應用,在目標設置的時候選擇“桌面”,可以看到默認的動態MinGw編譯器,以及我們自己

命名的靜態MinGW編譯器,如下圖,記得靜態編譯的調試是無法生成的,因為我沒有把調試也進行靜態編譯,只是把

發布進行靜態編譯了。雖然安裝占用的空間比較大,但是省卻了要調試的時候去修改Makefile.Debug文件的麻煩。

http://blog.csdn.net/mznewfacer/article/details/6990717


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM