標籤:qtp 分享 sid nmake 開始菜單 運行命令 app sel alt
簡介
Qt是跨平台的圖形開發庫,目前由Digia全資子公司 Qt Company 獨立運營,官方網址:
http://www.qt.io/
也可以訪問Qt項目網域名稱:http://qt-project.org/
Qt本身支援眾多作業系統。從通用作業系統Linux、Windows,到手機系統Android、iOS、WinPhone,嵌入式系統支援QNX、VxWorks,應用非常廣泛。
基於Qt的軟體非常多,其中最知名的要數Linux案頭系統KDE(涵蓋無數以K打頭的應用軟體)。國內WPS for Linux版本、360 for Linux也是使用Qt庫開發的介面。只要有C++基礎,Qt是很容易學的,而且開發跨平台的程式也容易。目前主流使用的Qt庫有Qt4和Qt5兩個大版本,下面介紹其在Windows系統裡的下載和安裝。
一、Qt4開發環境下載安裝
首先進入下載頁面 http://www.qt.io/download/
根據提示點擊選項。
最後點擊 “Get started”按鈕後,進入開源版頁面:
http://www.qt.io/download-open-source/
上面大按鈕Download Now是下載線上安裝版,其實只是一個下載工具,並不是真正的Qt開發庫。可以自己下載離線安裝包,注意頁面的“View All Downloads”,點開之後就能看到離線包。目前看到的全是Qt5.4.0版本的,那Qt4的在哪呢?
把上面頁面拖到最下面:
舊版本包就是最後一個連結:http://download.qt.io/archive/
開啟之後可以看到四個目錄:vsaddin是VisualStudio整合外掛程式,qtcreator是Qt官方的整合式開發環境,qt就是各種新老版本下載位置,online_installers就是線上安裝工具。
在Qt4的時候,Qt開發環境包括3個基本部分:Qt Framework(Qt庫)、QtCreator(IDE)和MinGW(編譯調試),都要分別下載安裝並配置,比較麻煩。進入Qt5之後,Qt公司將三者打包成一個安裝檔案,比如Qt5.4.0的離線安裝包,這樣方便許多。這裡先講舊的Qt 4.8.6的開發環境下載安裝配置方式。
1、Qt 4.8.6下載
從剛才頁面進入目錄
http://download.qt.io/archive/qt/4.8/4.8.6/
頭兩個是VS2010和VS2008編譯而成的Qt庫,第三個是MinGW版本Qt庫,就是要下載MinGW版本的來使用。dmg結尾的兩個是MacOS系統裡使用的Qt庫,qt-everywhere-opensource-src-4.8.6是Qt源碼包,有zip和tar.gz兩個壓縮格式的,兩個內容是一樣的,只是zip一般在Windows下比較流行,tar.gz是Linux上流行的壓縮格式。md5sums-4.8.6是以上檔案的校正和,changes-4.8.6是Qt版本記錄檔。
下載qt-opensource-windows-x86-mingw482-4.8.6-1.exe:
http://download.qt.io/archive/qt/4.8/4.8.6/qt-opensource-windows-x86-mingw482-4.8.6-1.exe
下載完成後不要著急裝,還有別的需要下載。
2、QtCreator下載
在http://download.qt.io/archive/qtcreator/頁面有一些舊版本的qtcreator可以下載,不過有新版還是用新版的好些。
進入剛才的 http://www.qt.io/download-open-source/ ,點開“View All Downloads”,找到
這裡面講的很清楚,Qt5.4.0安裝包已經帶有QtCreator,如果是裝Qt5.4.0就不需要下載。我們裝4.8.6的,這裡要下載“Qt Creator 3.3.0 for Windows (71 MB)”,
點擊下載即可。我們仔細看一下下載連結:
http://mirrors.hust.edu.cn/qtproject/official_releases/qtcreator/3.3/3.3.0/qt-creator-opensource-windows-x86-3.3.0.exe
這個其實用的是國內華中科大的軟體鏡像,我們可以嘗試進入:
http://mirrors.hust.edu.cn/qtproject/official_releases/
這個與Qt官方軟體源一樣,可以看到有
下軟體一定不要局限在一個檔案連結上面,開啟下載連結上層目錄可以找到一堆好東西的。自己開啟各個子目錄看看:
①gdb是針對Android開發的調試器。
②jom可以百度一下,http://qt-project.org/wiki/jom ,是nmake複製版,支援多條獨立命令並行構建軟體,加快軟體構建速度。
③online_installers是線上安裝器。
④Pyside是用於支援Python語言編寫Qt程式的。
⑤qbs是Qt Build Suite (QBS) ,http://qt-project.org/wiki/qbs,QBS是新創的Qt程式產生工具,因為Qt一般使用qmake來產生項目進行編譯,qmake必鬚根據qt版本變化而變化,不便於管理,qt開發人員對qmake又愛又恨,因此建立了不依賴Qt版本的產生工具QBS。
⑥qt,當然是qt庫本身了,從4.8到5.4都有。
⑦qt-installer-framework,百度一下是什麼,http://blog.csdn.net/cnsword/article/details/8740393,是專門用於發布開發好的程式用的,產生程式安裝器,可以為Linux、Windows、MacOS產生安裝器。Qt自己的QtCreator、QtSDK等安裝程式就是使用qt-installer-framework打包的。
⑧qtcreator是整合式開發環境,從2.5到3.3版本都有。
⑨vsaddin,是針對VisualStudio的Qt開發外掛程式。
上面囉嗦這麼多,看起來不著邊際的東西,我為什麼要講呢?
現在許多娃子腦子被教死了、教蠢了,下載檔案也不看看連結,看了連結也不管是不是有別的資源可以下載利用。等到用的時候就問:舊版Qt 4去哪裡下載?首頁怎麼只有Qt5.4.0,上哪找Qt5.3.1?
這些都是不用腦子的低級問題。能下載到Qt 5.4.0版本,用屁股想一下,Q.5.3.1和Qt 4.8.6能有多遠呢?
很多資源都是放在一塊的,用心去看看下載連結上級目錄、搜一搜就出來的。
請記住:下載檔案一定不要局限,學東西一定要有探索和發現的意識!
另外Qt軟體鏡像除了華中科大有,國內其他院校也是有的,中國科大的源還要快一些:http://mirrors.ustc.edu.cn/qtproject/
3、MinGW 4.8.2
為什麼是4.8.2?我們下載的qt-opensource-windows-x86-mingw482-4.8.6-1.exe 裡面的mingw482,就是指這個Qt庫使用MinGW 裡面g++ 4.8.2版本編譯產生的,所以需要同樣版本的MinGW來編譯器,避免其他新舊版本相容之類的問題。
我們嘗試運行qt-opensource-windows-x86-mingw482-4.8.6-1.exe的時候(先不要裝,就看看),這個安裝程式自己就會提示去哪裡找這個MinGW版本,而且這個MinGW不是官方原版:
是一個私人定製版,在sourceforge上面下載:
http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.8.2/threads-posix/dwarf/i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z/download
下載連結比較長,去sourceforge瀏覽該目錄可以看到:
http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.8.2/threads-posix/dwarf/
那個下載數目最多的就是Qt安裝包裡面指出的檔案連結,當然還有更新的修訂版,可以下載***rev3.7z也可以下載***rev4.7z,這裡下載新的rev4:i686-4.8.2-release-posix-dwarf-rt_v3-rev4.7z
4、安裝
有三個檔案,順序是這樣的,Qt庫需要MinGW,而qtcreator需要配置前面二者,所以先安裝MinGW,再安裝qt-opensource-windows-x86-mingw482-4.8.6-1,最後裝QtCreator。
(1)MinGW安裝
這個是綠色版的,直接解壓縮到C盤根目錄就行了,放到其他分區也是可以的。只要後面指定了正確位置就行了,這裡解壓後路徑是:C:\mingw32,g++位置是C:\mingw32\bin\g++.exe。
(2)Qt庫安裝
運行qt-opensource-windows-x86-mingw482-4.8.6-1.exe,這個包比較大,解壓時間長一些,等一陣子會進入安裝介面:
點擊Next進入:
點擊Next進入協議同意頁面:
選擇accept協議條款,點擊Next進入組建選擇介面:
全部選中,然後點擊Next,進入目標目錄選擇:
如果C盤空間不夠就選別的分區,然後點擊Next進入開始菜單設定:
點擊Next進入MinGW選擇頁面:
設定正確的MinGW檔案夾,如果路徑設定出錯點擊Install時會提示
這時候選擇“否”,重新設定正確的MinGW路徑,點擊Install之後會開始實際的安裝。等待安裝結束,取消下面兩個複選框再點Finish:
上面第一個是例子示範,第二個是Qt文檔。
在開始菜單裡面Qt by Digia v4.8.6 (MinGW 4.8.2 OpenSource)就是Qt庫的捷徑功能表項目:
①Assistant,協助文檔查看
②Designer,圖形化編輯ui檔案,就是Qt的圖形介面設計程式
③Examples and Demos,Qt程式例子
④Linguist,國際化語言翻譯工具
⑤Qt 4.8.6 (Build Debug Libraries),建立Debug版本庫,這個可以不管。
⑥Qt 4.8.6 Command Prompt,Qt命令列開發環境設定,這個命令列工具會設定好Qt位置和MinGW位置,可以從命令列編譯C++和Qt程式。
⑦Qt Readme,讀我檔案,描述Qt資訊
⑧qt.digia.com,Qt官網連結
⑨Uninstall Qt OpenSource 4.8.6,卸載Qt庫。
點開Qt 4.8.6 Command Prompt,可以嘗試運行命令看看版本資訊:
g++ –version
qmake –version
這個命令列工具對應命令是:
%COMSPEC% /k “C:\Qt\4.8.6\bin\qtvars.bat”
也就是說,如果想自己配置MinGW版本和Qt庫,可以學習 qtvars.bat 檔案來編寫自己的 bat檔案比如
@echo off
rem
rem This file is generated
rem
echo Setting up a MinGW/Qt only environment…
echo – QTDIR set to C:\Qt\4.8.6
echo – PATH set to C:\Qt\4.8.6\bin
echo – Adding C:\mingw32\bin to PATH
echo – Adding %SystemRoot%\System32 to PATH
echo – QMAKESPEC set to win32-g++-4.6
set QTDIR=C:\Qt\4.8.6
set PATH=C:\Qt\4.8.6\bin
set PATH=%PATH%;C:\mingw32\bin
set PATH=%PATH%;%SystemRoot%\System32
set QMAKESPEC=win32-g++-4.6
%COMSPEC% /k
上面第一段是關閉命令回顯,表示執行命令時不列印命令。
第二段是顯示想要顯示的資訊,列印了五行。
第三段是真正的設定環境變數的命令,就是提示的五條:
QTDIR指示Qt 4.8.6根目錄,中間三句設定PATH,包括Qt工具bin路徑、MinGW bin路徑和作業系統的System32路徑,QMAKESPEC是指編譯Qt程式的目標平台。
%COMSPEC% /k 就是cmd.exe執行命令後繼續保持啟動並執行意思。
(3)QtCreator安裝
如果想從命令列編譯Qt程式,上面環境已經夠了。當然現在都是可視化開發的,就要裝QtCreator整合式開發環境,因為QtCreator使用起來方便快捷。
運行qt-creator-opensource-windows-x86-3.3.0.exe,
點擊“下一步”,進入目錄指定介面:
設定安裝位置後點“下一步”,進入許可同意介面:
選擇接受許可,點擊“下一步”:
點擊“下一步”,
點擊安裝,
點擊“下一步”,
點擊“完成”,會開啟QtCreator:
(4)QtCreator配置
因為QtCreator還沒有配置,這時候是不能編譯器的。
開啟QtCreator菜單“工具”–>“選項”,在對話方塊左邊選“構建和運行”:
編譯Qt程式必須配置好幾個東西才行,需要配置的是:
構建套件(Kit)、QtVersions、編譯器、Debuggers。
①Debuggers
點擊Add,進入新的Debugger設定介面:
把Name設為GDB,然後點擊Path一行最右邊的“瀏覽”,找到gdb.exe的位置,
設定好後點擊右下角的“Apply”,就設定了調試器。
②編譯器
點擊右邊“添加”,快顯功能表有MinGW、GCC、Clang、Custom和QCC,選擇MinGW,
名稱設為MinGW,對於編譯器路徑設定,就瀏覽找到g++.exe,設定好這兩條就夠了,然後點擊右下角“Apply”。
③Qt Versions
點擊“添加”,彈出的檔案尋找框,是要選擇qmake.exe位置,之前裝的位置是:
C:\Qt\4.8.6\bin\qmake.exe,選中qmake.exe
點擊開啟,然後Qt版本會自動檢測:
點擊“Apply”就配置好Qt庫了。
④構建套件(Kit)
之前配置的三個最後都是為構建套件服務的,需要在這裡面選擇之前配好的三個:編譯器選擇“MinGW”、調試器選擇“GDB”、Qt版本選擇“Qt 4.8.6(4.8.6)”,Qt mkspec可以不用管,因為qmake.exe可以自動定。配置好編譯器、調試器和Qt版本之後,點擊“Apply”,再點擊“OK”。終於配置好了。
然後就可以建立一個項目,選擇“Qt Widgets Application”,都用預設的項目設定,一直點擊下一步,然後點“完成”,看到代碼:
點擊左下角倒數第三個表徵圖,就是純三角形那個:
程式就能正常編譯跑起來了。
二、Qt 5.4.0 下載和安裝
看完上面Qt4開發環境的安裝配置,相比之下Qt 5.4.0安裝(不需要配置)就特別簡單了。就是一個傻瓜包,注意選擇組件時把組件全部選中,然後一直點“下一步”就完事了。下面簡單介紹一下。
1、下載Qt5.4.0開發環境
http://www.qt.io/download-open-source/
點開“View All Downloads”,找到“Offline Installers”離線安裝包,
有Linux、MacOS和Windows的,關於Windows系統裡Qt安裝包:
頭兩個是VS2013 64位版本的Qt庫,有OpenGL版本和非OpenGL版本,OpenGL版本就是指底層繪圖用OpenGL驅動,非OpenGL底層是用DirectX驅動來繪圖。第三、第四個是VS2013 32位版本,第五個第六個是VS2012和VS2010的Qt庫。需要注意的是微軟VS2012之後編譯的程式預設沒法在WindowsXP上面跑(可以打補丁支援XP)。不推薦使用Visual Studio開發Qt程式,因為VS沒有Qt Creator好用,VS還總是有莫名其妙的問題出現。
最好的就是下載 Qt 5.4.0 for Windows 32-bit (MinGW 4.9.1, 852 MB) 。
下載列表第八個是針對Android開發的(比較麻煩,網上有教程)。
第九個是針對Windows RT作業系統(一般用在Windows平板電腦)的Qt庫。
下載MinGW版本Qt檔案是:
qt-opensource-windows-x86-mingw491_opengl-5.4.0.exe
運行後等待exe檔案自己啟動和解壓,這需要的時間可能比較長,因為檔案很大。
2、安裝
點擊下一步,
點擊下一步,進入組件選擇介面:
這裡要注意要把東西全部勾選上,圖裡面第一個MinGW 4.9.1是指用採用MinGW編譯而成的Qt庫,第二個MinGW才是真正的編譯調試環境。
全部選擇後點擊下一步:
選擇agree然後點擊下一步:
點擊下一步:
點擊安裝,等待安裝好,點擊“完成”。
因為安裝包把東西都帶齊了,所以可以直接使用QtCreator建立、編譯、產生程式。如果本機存在多個Qt構建套件,在建立項目時,Kit Selection:
可以選擇多個Qt構建套件,不同套件會產生不同程式。編譯時間在左下角點開Debug或Release字樣,可以選擇不同的Qt庫產生各自的Debug版程式或Release版程式。
三、開發好的可執行程式如何發布
一般用Qt官方開發環境,產生的exe都是動態連結版本,如果要放到其他電腦上運行,需要複製一大堆依賴的dll,而且數量比較多,是個麻煩。
如果想用一個exe乾淨利落的發布程式,就需要使用靜態編譯版的Qt庫,網上有教程,我就不多說了,可以教大家用現成的,在Git-hub上正好有靜態Qt庫:
https://github.com/fostersoftware/QtStaticWindows
https://github.com/fostersoftware/QtStaticLinux
第二個是Linux的,Windows系統下載第一個QtStaticWindows,最好使用git工具來下載,建立一個QtSatic檔案夾,在該檔案夾裡執行:
git clone https://github.com/fostersoftware/QtStaticWindows.git
下載完成後,添加Qt靜態庫的方法參考第一部分的4.(4)QtCreator配置,只需要在QtCreator裡面添加新的 Qt Version和新的構建套件(Kit)。
注意上面的只有Release版本Qt庫,所以要在使用Qt官方的動態庫版開發調試完成之後,最後使用靜態Release版Qt庫產生獨立的exe程式,就可以放到其他機器上跑了。
Qt Creator下載和安裝(詳細教程)