找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 2688|回復(fù): 0
收起左側(cè)

Qt開發(fā)環(huán)境的搭建和helloworld

[復(fù)制鏈接]
ID:140343 發(fā)表于 2016-9-25 11:01 | 顯示全部樓層 |閱讀模式
導(dǎo)語(yǔ)

從這一篇我們正式開始Qt編程。本篇主要講解Qt編程環(huán)境的搭建。為了適應(yīng)大多數(shù)讀者的需要,同時(shí)為了避免系統(tǒng)環(huán)境的不同而產(chǎn)生不必要的問(wèn)題,這里選擇使用Windows系統(tǒng)的Qt版本。因?yàn)樵谇懊鎺资形覀冎饕v解基本Qt控件項(xiàng)目的桌面編程,所以沒(méi)有使用SDK進(jìn)行安裝,而是采用了Qt庫(kù)與Qt Creator分別下載安裝的方式,這樣就只需要下載Qt的桌面版本的庫(kù)。而SDK中默認(rèn)集成了Qt CreatorQt桌面庫(kù)以及Qt移動(dòng)開發(fā)的庫(kù),這個(gè)會(huì)在第40篇至第50篇進(jìn)行講解。再者,鑒于Qt一次編寫代碼,多次編譯運(yùn)行的特點(diǎn),在我們教程中講解的例子都是可以直接在其他系統(tǒng)環(huán)境下(比如Linux系統(tǒng))直接編譯運(yùn)行的。

環(huán)境:Windows 7 + Qt 4.8.1+ Qt Creator 2.4.1

目錄

一、Qt Qt Creator的下載和安裝
二、創(chuàng)建hello world程序
三、發(fā)布程序
四、Qt工具介紹
五、附錄


正文

一、Qt Qt Creator的下載和安裝

1.下載

(已過(guò)時(shí))
下載Qt 4.8.1:ftp://ftp.qt-project.org/qt/source/qt-win-opensource-4.8.1-mingw.exe
下載Qt Creator2.4.1:ftp://ftp.qt-project.org/qtcreator/qt-creator-win-opensource-2.4.1.exe

最新下載地址:(已過(guò)時(shí))
所有版本的Qt下載地址:ftp://ftp.qt-project.org/qt/source/
所有版本的Qt Creator下載地址:ftp://ftp.qt-project.org/qtcreator/

最新下載地址:http://download.qt-project.org/

其中snapshots里面包含了最新測(cè)試版本;official releases里面包含了官方發(fā)布版,即最終發(fā)布版; archive里面是Qt4.7及以前版本,Qt Creator2.5及以前版本。


更新  (2013-5-1 已過(guò)時(shí)

提示:在最近的Qt Creator版本(2.5.0及以后)中已經(jīng)默認(rèn)不再包含MinGW,需要自己手動(dòng)下載安裝。可以在這里下載。(注:最新的Qt 5版本中已經(jīng)默認(rèn)包含了Qt Creator和MinGW,需根據(jù)自己實(shí)際情況操作。

官方原文如下:
) 20px 6px no-repeat rgb(249, 249, 249);background-color:transparent">
Notefor Windows MinGW Users
Wedecided to remove the custom MinGW distribution and MinGW gdb from our QtCreator-only Windows binary distribution package. The original reas** toinclude it there (it was the predecessor of the Qt SDK) are since a while nowfilled by the Qt SDK. Also, updating the shipped version is a legal hassle aslong as the binaries are provided through Nokia, but we also don’t want to shipstone age versi**. We are working on build infrastructure for the Qt Projectitself though, that we ultimately want to use to build Qt Creator packages,snapshots, and more. Currently, on http://builds.qt-project.org, you find QtCreator snapshots for Linux and Windows, and also a Python enabled MinGW gdb(that reportedly doesn’t work on Windows XP). It’s still possible to installMinGW and gdb separately and register them in Qt Creator. Weare not removing the support for it from Qt Creator.
Previouslyshipped MinGW: ftp://ftp.qt.nokia.com/misc/MinGW-gcc440_1.zip
Previously shipped MinGW gdb: ftp://ftp.qt.nokia.com/misc/gdb/ ... b-7.2-mingw-x86.zip
Upto date MinGW: http://www.mingw.org (we might provide acompact version like the one in the old installer later)
Python enabled MinGW gdb 7.4: http://builds.qt-project.org/job/gdb-windows/ (compiledon Windows 7, doesn’t work on Windows XP)




更新:2014-10-1

在安裝Qt 4.8.6及以后的Qt 4版本時(shí),應(yīng)該按照安裝時(shí)的提示來(lái)下載相應(yīng)版本的MinGW,不然編譯程序無(wú)法運(yùn)行。例如Qt 4.8.6安裝時(shí)的提示如下圖。



可以直接點(diǎn)擊提示給的鏈接來(lái)下載。也可以從這里下載。


更新:(關(guān)于Qt 4.8搭配Qt Creator 2.5以后版本的MinGW和無(wú)法調(diào)試的情況,2013-7-1)

注意:Qt 5以后版本默認(rèn)包含了所有需要的工具,不存在這里的情況,直接下載安裝即可使用!

1.MinGW

如果是Qt 4版本,需要使用GCC 4.4,也就是MinGW需要是4.4版本的,其他新的版本均不可用。


下載:http://pan.baidu.com/share/link?shareid=1521902020&uk=2352291552
備用地址:http://builds.qt-project.org/job ... ingw32-qtproject.7z

2.調(diào)試器GDB

在Qt 4.8版本,需要下載并指定GDB才能正常調(diào)試。

下載地址:http://origin.releases.qt-project.org/gdb/    或到
社區(qū)下載頁(yè)面進(jìn)行下載
從這里面根據(jù)自己的系統(tǒng)來(lái)下載合適的版本。

下載完MinGW和GDB以后,將其解壓到Qt的安裝目錄中,比如這里都解壓到了C:\Qt目錄中。

3.在Qt Creator中的設(shè)置。我們需要先在編譯器中添加并制定gcc的路徑,例如C:\Qt\mingw32\bin\gcc.exe 如下圖所示:



然后在Qt版本中添加并指定qmake的路徑,如下圖所示。



最后在構(gòu)建套件中添加并指定編譯器、調(diào)試器和Qt版本。如下圖所示。




2.安裝
下載完成后先安裝QtCreator,采用默認(rèn)選項(xiàng)即可,安裝路徑推薦使用默認(rèn)的C盤,因?yàn)檫@樣可以與教程中的一致,在以后的內(nèi)容中可以避免一些不必要的問(wèn)題。然后安裝Qt庫(kù),當(dāng)在選擇mingw目錄時(shí),需要設(shè)置為前面安裝的Qt Creator目錄下的mingw目錄。如下圖所示。



二、創(chuàng)建hello world程序

1.運(yùn)行Qt Creator
從桌面上的快捷方式打開Qt Creator,進(jìn)入眼簾的是Qt Creator的歡迎界面。如下圖所示。


Qt Creator分為了七個(gè)模式:歡迎模式、編輯模式、設(shè)計(jì)模式、調(diào)試模式、項(xiàng)目模式、分析模式和幫助模式,分別由左側(cè)的七個(gè)圖標(biāo)進(jìn)行切換,對(duì)應(yīng)的快捷鍵是Ctrl + 數(shù)字17。現(xiàn)在顯示的就是歡迎界面,這里可以看到一些入門教程、開發(fā)的項(xiàng)目列表、Qt提供的示例程序,也可以創(chuàng)建或打開一個(gè)項(xiàng)目。

2.創(chuàng)建項(xiàng)目
我們使用歡迎頁(yè)面上方的“創(chuàng)建項(xiàng)目”按鈕來(lái)創(chuàng)建新的項(xiàng)目(當(dāng)然也可以在文件菜單中創(chuàng)建項(xiàng)目)。在項(xiàng)目模板中選擇Qt 控件項(xiàng)目,然后選擇QtGui應(yīng)用,這樣便會(huì)生成一個(gè)一般的桌面Qt圖形界面項(xiàng)目,如下圖所示。其他項(xiàng)目的創(chuàng)建會(huì)在后面的教程中講到。


  然后更改項(xiàng)目名稱和路徑,這里名稱可以設(shè)置為helloworld,注意名稱和路徑上都不要有中文。如下圖所示。



  點(diǎn)擊下一步后,會(huì)彈出目標(biāo)設(shè)置對(duì)話框,這里顯示沒(méi)有有效的Qt版本,并提示需要在工具/選項(xiàng)菜單中進(jìn)行設(shè)置。如下圖所示。下面我們就來(lái)添加Qt版本。



3.關(guān)聯(lián)Qt庫(kù)
因?yàn)槲覀冞@里是分別下載Qt CreatorQt庫(kù)的方式,所以安裝后它們并沒(méi)有關(guān)聯(lián),這樣是無(wú)法編譯程序的。下面在Qt Creator中關(guān)聯(lián)Qt庫(kù)。打開工具→選項(xiàng)菜單,然后選擇“構(gòu)建和運(yùn)行”一項(xiàng),再進(jìn)入Qt版本選項(xiàng)卡。如下圖所示。


我們可以手動(dòng)設(shè)置Qt版本的關(guān)聯(lián),現(xiàn)在點(diǎn)擊右上角的“添加”按鈕,然后會(huì)讓選擇qmake.exe文件,我們?cè)?/font>Qt(不是Qt Creator)安裝目錄的bin目錄中找到該文件并打開。如下圖所示。


現(xiàn)在已經(jīng)默認(rèn)生成了版本信息,我們點(diǎn)擊確定按鈕即可。如下圖所示。



當(dāng)設(shè)置完Qt版本,再次回到歡迎界面后,可以發(fā)現(xiàn)“演示和范例”中已經(jīng)顯示出了各種示例程序,大家可以打開自己需要的一個(gè)例子。這個(gè)我們先不進(jìn)行講解,下面繼續(xù)來(lái)完成hello world程序。



4.完成hello world項(xiàng)目
       還按照前面的流程創(chuàng)建項(xiàng)目,在目標(biāo)設(shè)置頁(yè)面默認(rèn)選擇為了桌面Qt版本,因?yàn)楝F(xiàn)在我們只關(guān)聯(lián)了這一個(gè)桌面版本的Qt庫(kù),所以只能編譯為桌面程序。如下圖所示。這里可以選中“使用影子構(gòu)建”,這樣編譯生成的文件會(huì)和源碼分別存放,這個(gè)在下面的內(nèi)容中會(huì)看到。


點(diǎn)擊下一步,在顯示的類信息中將基類選擇為QDialog,就是說(shuō)我們將程序設(shè)置為了一個(gè)對(duì)話框,然后將類名更改為MyDialog。如下圖所示。


再點(diǎn)擊下一步進(jìn)入?yún)R總頁(yè)面,這里可以選擇版本控制系統(tǒng),我們這里沒(méi)有用到,所以不進(jìn)行設(shè)置,點(diǎn)擊完成按鈕來(lái)完成項(xiàng)目的創(chuàng)建。如下圖所示。


5.編輯運(yùn)行項(xiàng)目
       創(chuàng)建完項(xiàng)目后會(huì)進(jìn)入編輯模式,這里可以對(duì)項(xiàng)目文件進(jìn)行查看和編輯。左側(cè)是項(xiàng)目文件的列表,這里將項(xiàng)目中的文件分為了頭文件、源文件等,進(jìn)行分類顯示。除了顯示項(xiàng)目文件,還可以通過(guò)下拉菜單來(lái)選擇類視圖、大綱等內(nèi)容。在右側(cè)就是代碼編輯區(qū)域,這里對(duì)關(guān)鍵字進(jìn)行了高亮顯示。如下圖所示。


  我們雙擊界面文件中的mydialog.ui文件,進(jìn)入設(shè)計(jì)模式。在這里可以對(duì)界面進(jìn)行可視化設(shè)計(jì),也就是所見即所得。左側(cè)的是一些常用部件,可以直接拖動(dòng)到界面上;右側(cè)是對(duì)象和類列表,下面是部件的屬性編輯窗口;在中間,上方是主設(shè)計(jì)區(qū)域,顯示了窗口的主界面,下面是Action編輯器以及信號(hào)和槽編輯器窗口。
        我們從左側(cè)部件列表中找到Label標(biāo)簽部件并拖動(dòng)到界面上,然后雙擊,更改其顯示文本為“helloworld”,如下圖所示。


  下面我們單擊Qt Creator左側(cè)的運(yùn)行按鈕來(lái)編譯運(yùn)行程序,這時(shí)會(huì)彈出保存修改對(duì)話框,如下圖所示。這里選中“構(gòu)建之前總是先保存文件”,然后點(diǎn)擊保存所有文件按鈕。



最后hello world程序成功運(yùn)行,效果如下圖所示。


三、發(fā)布程序
1.查看工程目錄
這里會(huì)發(fā)現(xiàn)多了一個(gè)helloworld-build-desktop-Qt_4_8_1__4_8_1____目錄,里面存放的就是編譯生成的文件。這就是前面創(chuàng)建項(xiàng)目講到的 “使用影子構(gòu)建” ,如果沒(méi)有選中這個(gè),那么生成的文件就會(huì)和源碼在同一個(gè)目錄里。該目錄的內(nèi)容如下圖所示。


這里有兩個(gè)目錄:debug和release,分別用于存放debug方式和release方式編譯生成的可執(zhí)行文件。因?yàn)榫幾g時(shí)默認(rèn)是debug版本,所以現(xiàn)在release目錄中是空的。打開debug目錄,可以看到生成的可執(zhí)行文件helloworld.exe如下圖所示。


此時(shí)雙擊helloworld.exe文件,會(huì)彈出系統(tǒng)錯(cuò)誤提示框,表明丟失了mingwm10.dll文件。如下圖所示。


其實(shí)我們可以在Qt安裝路徑下找到該文件,我這里是在C:\Qt\4.8.1\bin中,將其復(fù)制到debug目錄里面,然后還會(huì)提示缺少其他幾個(gè)dll文件,依次將它們復(fù)制過(guò)來(lái)即可。完成后helloworld.exe就可以運(yùn)行了。其實(shí)也可以先設(shè)置環(huán)境變量,以后在本機(jī)就可以直接運(yùn)行生成的可執(zhí)行文件了,這個(gè)可以參考下面的附錄。

2.編譯release版本程序
可以看到debug版本的可執(zhí)行文件需要的dll文件是很大的,因?yàn)槠渲邪苏{(diào)試信息。而我們實(shí)際發(fā)布軟件是使用的release版本,下面我們就來(lái)編譯release版本的helloworld程序。如果前面關(guān)閉了Qt Creator,那么需要在Qt Creator中再次打開helloworld項(xiàng)目,可以從歡迎模式的開發(fā)頁(yè)面中打開最近使用的項(xiàng)目,也可以從開始菜單中打開,還可以將源碼目錄中的.pro文件直接拖入到QtCreator來(lái)打開。
然后將版本設(shè)置為release版本,也就是發(fā)布版本。如下圖所示。完成后運(yùn)行程序即可。


最后,可以從release目錄中將helloworld.exe復(fù)制出來(lái),然后將需要的幾個(gè)dll文件(跟debug版本的不是完全一樣哦�。┮矎�(fù)制過(guò)來(lái),將它們放到一個(gè)文件夾中,打包進(jìn)行發(fā)布。


補(bǔ)充:如果要給生成的exe可執(zhí)行文件更換一個(gè)自定義圖標(biāo),可以這樣做:
1.在項(xiàng)目中添加一個(gè)myapp.rc(名字可以隨意)文件,然后在里面輸入下面一行代碼:
  • IDI_ICON1               ICON    DISCARDABLE     "appico.ico"

[color=rgb(30, 84, 127) !important]復(fù)制代碼
這里的appico.ico就是自己的.ico圖標(biāo)文件;

2.在.pro項(xiàng)目文件中添加下面一行代碼:
  • RC_FILE = myapp.rc

[color=rgb(30, 84, 127) !important]復(fù)制代碼3.重新編譯


四、Qt工具介紹
安裝好Qt后,會(huì)在開始菜單生成一個(gè)目錄,如下圖所示。


這里是Qt提供的幾個(gè)工具軟件。其中AssistantQt助手,它已經(jīng)集成到了Qt Creator中,就是幫助模式;DesignerQt設(shè)計(jì)師,它也集成到了QtCreator中,就是設(shè)計(jì)模式;Exampleand DemosQt示例程序和演示程序,其中的演示程序就是一些比較大型的程序,這個(gè)我們?cè)跉g迎模式已經(jīng)看到了,不過(guò)這里可以直接運(yùn)行這些程序;LinguistQt語(yǔ)言家,是用來(lái)對(duì)軟件進(jìn)行國(guó)際化翻譯的;下面的Qt 4.8.1 Command Prompt可以用來(lái)進(jìn)行命令行操作,比如使用命名來(lái)編譯程序等。

五、附錄
前面為了運(yùn)行生成的helloworld.exe文件,復(fù)制了一些dll文件。其實(shí),如果只想在本機(jī)運(yùn)行程序,那么不必要每次都復(fù)制這些文件,只需要將path環(huán)境變量設(shè)置一下即可。我們?cè)谧烂嬗?jì)算機(jī)(我的電腦)圖標(biāo)上點(diǎn)擊鼠標(biāo)右鍵,選擇屬性,然后選擇高級(jí)系統(tǒng)設(shè)置,在這里在高級(jí)頁(yè)面選擇環(huán)境變量,然后在系統(tǒng)變量中找到Path變量,雙擊,在變量值的最后,添加上Qtbin目錄的路徑,我這里是;C:\Qt\4.8.1\bin(注意,在最前面有個(gè)英文半角的分號(hào))。如下圖所示。


這樣以后就不需要再?gòu)?fù)制那些dll文件了。其實(shí),還有一種方式也不需要dll文件,那就是靜態(tài)編譯,不過(guò)使用靜態(tài)編譯的Qt程序很大,而且不夠靈活,所以這里不再講解,有興趣的朋友可以在網(wǎng)上搜索一下。

結(jié)語(yǔ)

       這一篇中通過(guò)創(chuàng)建一個(gè)hello world程序,主要講解了Qt Creator開發(fā)環(huán)境的創(chuàng)建以及Qt程序運(yùn)行發(fā)布等內(nèi)容。這一篇是最基本的知識(shí),希望大家先看完本篇再來(lái)學(xué)習(xí)下面的內(nèi)容。在Qt Creator快速入門》一書中對(duì)開發(fā)環(huán)境以及hello world程序進(jìn)行了更加詳細(xì)深入的講解,有需要的童鞋可以參考一下。


回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表