qt靜態編譯的最大好處就是可以直接產生能夠不依靠多餘的dll執行的exe檔案,
而且exe檔案會比動態編譯的要小上很多。
解壓後,找到原始碼裡的qtbase\mkspecs\common\msvc-desktop.conf這個檔案,
然後把
qmake_cflags_release = $$qmake_cflags_optimize -md
qmake_cflags_release_with_debuginfo += $$qmake_cflags_optimize -md -zi
qmake_cflags_debug = -zi -mdd
修改為
qmake_cflags_release = $$qmake_cflags_optimize -mt
qmake_cflags_release_with_debuginfo += $$qmake_cflags_optimize -mt -zi
qmake_cflags_debug = -zi -mtd
然後在cmd裡執行命令:
其中的2個目錄要更換,第乙個要更換為你的原始碼的位置,第二個目錄要更換為要生成的static的目錄位置
c:\qt\qt5.10.1\5.10.1\qt-everywhere-src-5.10.1\configure -confirm-license -opensource -platform win32-g++ -debug-and-release -static -static-runtime -force-debug-info -prefix 「c:\qt\qt5.10.1\5.10.1\mingw53_32_static」 -qt-sqlite -qt-pcre -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -nomake tools -nomake tests -no-compile-examples -nomake examples
等待大約幾分鐘,命令執行完成。
執行命令:mingw32-make -j4
其中的4指的是4執行緒編譯,改大會更快,改小會電腦不卡。
我的cpu是i7-6700hq,花了大約2個小時編譯完成。
最後執行命令: mingw32-make install
大約花費
QT在windows下的安裝
qt編譯手記 昨晚加班在windows中編譯了一下qt,我用的是4.4.3 qt all opensource src 4.4.3.tar.bz2 的版本,編譯器用的是vc6.0。編譯後發現有些例子不能編譯,研究一下發現這是在編譯的時候引數選擇的問題,我編譯時用的選項 環境變數看文件 是 confi...
在QT中處理windows訊息
為了能處理某些qt無法處理的事件,或者在qt將訊息封裝之前能做某些操作等等,我們可以自己處理windows事件。cpp view plain copy class public 然後我們將此函式補充完全 cpp view plain copy intargc,char bool long resul...
在Windows下面編譯Qt的MySQL驅動
在windows下面編譯qt的 mysql驅動 mysql undefined reference 2 安裝 mysql 的編譯環境不支援含有空格的路徑,請保證安裝路徑沒有空格。本文的安裝路徑為d development mysql 3 編譯qsqlmysql 方法一 更改mysql.pro 1 進...