完整的windows下搭建Qt開發環境 QT4.8+qt creator2.8.0, 解決 gbd異常中斷 和 靜態編譯
http://blog.csdn.net/coding_ali/article/details/10177615
換系統之後還沒玩過Qt,最近時間了,就折騰折騰。。。。
1.要下載的安裝包。
包括:MinGW-gcc440_1.zip
qt-creator-windows-opensource-2.8.0.exe
qt-win-opensource-4.8.5-mingw.exe
工欲善其事必先利其器,下載好這些,你就成功一般啦
2.安裝。
(1)首先安裝qt creator,雙擊安裝檔案一步一步next就可以啦,不過要注意安裝目錄不要有空格和特殊字元呦
(2)安裝mingw。qt框架可以使用VS提供的編譯器,也可以使用GCC在win下的版本就是mingw啦。其實也不是安裝,只要把它解壓到D:\Qt 這個目錄就可以啦。
(3)安裝 qt-win-opensource-4.8.5-mingw.exe。一步一步next就可以啦。最後一步要選擇編譯器mingw的路徑,就是你上一步解壓縮的目錄,注意一下就可以啦。
這三個安裝完你就成功一大半啦。。。。。。。。。。。。。。。。
3.配置
安裝Qt完成之後,開啟QCreator,點選tools--options--build&run。選擇Qt version,點選add按鈕,瀏覽進入路徑為D:\Qt\bin\qmake.exe的資料夾,載入qmake.exe的程式,點選apply按鈕,應用設定。(我在載入的時候,qmake.exe項前面會出現紅色感嘆號。若遇到相同問題,重新再載入一遍,紅色感嘆號即可消失)
繼續設定Tools chains中的complier path,點選browse,路徑為d:\Qt\MinGW\bin\mingw32-g++.exe,在上面的Manual會顯示出MinGW即可。按ok完成設定。如下圖所示:
另外一個需要注意的地方是,構建套件的選擇。當在安裝qt之前你的系統有安裝VS的話,這個地方一定要修改一下,注意Qt版本的選擇和編譯器的選擇。如下圖:
好,做完以上的步驟我們就可以測試一下啦。
是不是有下面的效果。。。。
好啦,就到這裡吧。大家有什麼問題可以留言。。。
Qt4.8.5在Windows7下的安裝全過程
(2013-07-09 15:47:26) 搞了一整天,終於在電腦上把Qt給安裝完成了。下面來分享下自己在安裝過程中的一些些具體步驟: 我使用的 Qt library是qt-win-opensource-4.8.5-mingw.exe, Qt creater是qt-creator-windows-opensource-2.7.2.exe; 安裝QT之前,還需要下載MinGW-gcc,我使用的是MinGW-gcc440_1.zip; 2.做好了所有準備後,我們開始安裝; MinGW是一個可以自由使用和自由釋出的Windows特定標頭檔案和使用GUN工具集匯入庫的集合,允許在GUN/Linux和我Windows平臺生成本地的Windows程式而不需要第三方C執行時庫。 我們在安裝Qt之前,需要在系統中存放這個MinGW工具庫。這裡,我存放的位置是D:\Install software;(當然,你完全可以存放在其他地方,只要你自己記住位置就可以了),因為下面的安裝過程需要用到這個庫。 (2).接下來,開始安裝Qt library。直接雙擊exe檔案就可以了,然後根據提示進行安裝,這裡我選擇安裝的位置是D:\QT;安裝過程中有個地方需要填入MinGW的位置,該位置就是上一步中MinGW存放的位置,我這裡的位置是D:\Install software\mingw;然後很輕鬆就完成安裝; (3).然後,為了以後能更方便的使用Qt,我們需要先編譯一下。在開始選單中,找到Qt by Digia v4.8.5 (MinGW OpenSource)這個資料夾,開啟,裡面會有Qt 4.8.5(Build Debug Libraries)的一個批處理檔案,點選後會進入windows下的DOS介面,然後根據裡面的提示,根據自己的選擇來編譯這個庫。很簡單,就2步吧。不過這個時間有點長,因為庫比較大,我電腦比較慢,差不多編譯了快4個小時,編譯時就和linux下的命令列介面一樣的,一行一行的指令往上飛。 (4).編譯完成後,我們需要配置系統環境變數。右鍵單擊我的電腦,選擇屬性,進入高階系統設定,單擊右下角的環境變數,在環境變數path中新增 ;D:\QT\bin;D:\Install software\mingw\bin 然後再新增兩個環境變數 QTDIR=D:\QT(編譯時的預設目錄,這個可以隨意設定,用來存放工程檔案的); QMAKESPEC=win32-g++; 到這裡,windows下的Qt開發環境基本就配置好了。 下面,我們在D:\QT的目錄下建立一個project的資料夾,再在project中建立hello資料夾,再在hello資料夾中建立一個cpp檔案,寫入一下測試程式: #include <QApplication> //包含QApplication標頭檔案 #include <QPushButton> //包含QPushButton標頭檔案 int main(int argc, char *argv[]) // 還是標準的main函式 { QApplication app(argc, argv); // 構造應用,同MFC中的WinApp QPushButton hello("Hello world!"); // 構造PushButton hello.resize(100, 30); // 設定按鈕大小 hello.show(); // 顯示按鈕 return app.exec(); // 執行應用,同MFC中的Run } 然後開啟開始選單中的 Qt 4.8.5 Command Prompt ,通過cd 命令找到cpp所在的路徑地址,再輸入 qmake -project make最後,編譯成功通過,會在hello資料夾下的release資料夾中生成一個.exe檔案,雙擊執行即可。也可以在DOS下執行,進入資料夾目錄,直接輸入:hello.exe 即可;這裡,我還列出了一些常用指令 dir 檢視檔案列表,同linux下的“ls” cd 改變檔案目錄 “cd ..”返回到上一層 “cd \”到所在磁碟,一般為c: del 刪除一個檔案 mkdir建立一個資料夾 rmdir 刪除一個空資料夾 notepad xx.cpp 用記事本開啟(如果沒有則是建立)xx.cpp檔案 也可以是.h檔案 3.如果覺得使用命令列不習慣,那麼就可以安裝Qt creater,這是一個圖形化的設計編譯介面,直接使用EXE檔案安裝。安裝完成後,開啟軟體,單擊工具欄,單擊選項按鈕,進入下面的頁面:
單擊構建和執行(這是新版本,老版本是“Qt4”),就是上面這個頁面,將Qt版本中的qmake路徑手動設定為Qt安裝路徑中的bin資料夾下的qmake.exe檔案即可(新增,確定); 這時你可以在creater中新增hello的專案,看看除錯時候能夠通過,能否正常執行,如果出現除錯不通過,gbd異常中斷,那麼你還需要下載gdb。因為在之前的Qt Creator中,是以一個Qt SDK的整體來提供的,裡面就包括了MinGW和偵錯程式,而且也無需配置,現在的新版本都是分散安裝的,所以就需要自己單獨再找找了。網上的一個說法是2.5以上的版本必須使用7.2 IIRC版以上的GDB,需要需要自己單獨下載,這裡我找到兩個下載地址。 http://qt-project.org/wiki/QtCreatorBuildGdb 下載了Downloads中的 GDB 7.5 binaries,檔名為qtcreator-gdb-7.4-MINGW32_NT-6.1-i686.tar.gz,直接用winRAR解壓,資料夾內容如下:
然後我們回到剛才的配置頁面,選擇配置套件(Kit),選擇手動設定(桌面預設),如下所示:
將偵錯程式改為我們剛剛下載的gdb中的gdb-686-pc-mingw32.exe,最後確定即可,編譯順利通過。 到此,所有的工作已經完成,現在可以放心使用Qt開發環境了。
步驟三:標準庫的編譯
1、 配置編譯選項
1)開啟X:\Qt\4.8.0\mkspecs\win32-g++\qmake.conf (X為QT安裝碟符)
(建議先備份一下)
在QMAKE_LFLAGS後面加上 –static
並將QMAKE_LFLAGS_DLL後面的 –shared 改為 –static
儲存並關閉
2)將X:\Qt\4.8.0\bin 下的syncqt與syncqt.bat 這兩個檔案刪除或改名
否則在編譯時會提示找不到perl環境,如下圖所示
2、 開始編譯
開啟Qt 4.8.0 Command Prompt軟體,輸入
configure –static –release –no-exceptions
PS:這個配置僅編譯release版本,如果需要同時需要靜態版的Debug版本,需要把-release 改為 –debug-and-release
回車後會有版本選擇和使用者協議,先後按”o”(Open Source) “y”(Yes)
…………耐心等待一會…………
配置完成後會出現下面這個畫面:
————在開始這個步驟前,請確保你有至少2個小時的空閒時間————
接著輸入 mingw32-make sub-src
回車………該幹啥幹啥去吧…………直到你看到下面這個畫面:
PS:編譯過程中可以瀏覽網頁,可以刷微博聊QQ,但不建議跑大型程式,否則會大幅降低編譯速度!!
當你看到這個畫面時,恭喜你,馬上就成功了~
步驟四:配置QT Creator
開啟QT Creator新建一個工程,在Project介面點選下圖所示的Manage按鈕
點選ADD
進入目錄X:\Qt\4.8.0\qmake 選擇qmake.exe 如下圖
底下的Version Name可以自己起(我用的Qt 4.8.0 Static)
返回Project介面,新增剛才選擇的編譯器
選擇好之後,記得確認選擇的是QT4.8.0的Release版本(靜態Debug版沒有編譯,所以選擇該模式會出錯)
編譯一下,進入工程目錄,直接雙擊程式,完美執行!
至此,QT靜態編譯完成。
由於QT直接編譯出來的exe體積較大,為了節省空間,便於儲存與傳播,可以壓縮一下,這裡選用UPX
拷貝UPX.EXE至C:\Windows\System32目錄下
在cmd中輸入upx(+空格)(+檔案路徑+檔名)(+回車)
即可出現下圖
壓縮比例為39.93% 可見效果還是非常可觀的
至此,QT的靜態庫編譯全部完成。
為了保證教程的準確性,我在寫教程前,已將QT完整刪除並重新安裝編譯,每完成一步就寫一步的教程。我的編譯方法未必是最好的,但是按照我的方法,保證可以成功!