QT简介及QT环境搭建
QT簡(jiǎn)介及QT環(huán)境搭建
文章目錄
- QT簡(jiǎn)介及QT環(huán)境搭建
- 一、QT簡(jiǎn)介
- 1. 什么是QT?
- 2. QT的發(fā)展史
- 3. QT支持的平臺(tái)
- 4. QT的優(yōu)點(diǎn)
- 5. QT開(kāi)發(fā)工具
- 二、QT環(huán)境搭建(CentOS7)
一、QT簡(jiǎn)介
1. 什么是QT?
Qt是一個(gè)1991年由Qt Company開(kāi)發(fā)的跨平臺(tái)C++圖形用戶界面應(yīng)用程序開(kāi)發(fā)框架 它既可以開(kāi)發(fā)GUI程序,也可用于開(kāi)發(fā)非GUI程序,比如控制臺(tái)工具和服務(wù)器。Qt是面向?qū)ο蟮目蚣?#xff0c;使用特殊的代碼生成擴(kuò)展(稱為元對(duì)象編譯器(Meta Object Compiler, moc))以及一些宏,Qt很容易擴(kuò)展,并且允許真正地組件編程。
2. QT的發(fā)展史
- 1991–Haavard Nord和Eirik Chambe-Eng開(kāi)始開(kāi)發(fā)將會(huì)支持X11和Windows的Qt
- 1994–Qt Company成立
- 1996–KDE項(xiàng)目由MatthiasEttrich創(chuàng)建(Matthias現(xiàn)為諾基亞Qt發(fā)展框架工作)
- 1998 Apr 05Trolltech的程序員在 5 天之內(nèi)將 Netscape5.0 從Motif移植到 Qt 上
- 1998 Apr 08 KDE Free Qt 基金會(huì)成立
- 2000 Oct 30 Qt/Embedded 開(kāi)始使用GPL宣言
- 2000 Sep 04 Qt free edition 開(kāi)始使用 GPL
- 2008 Nokia從Trolltech公司收購(gòu)Qt,并增加LGPL的授權(quán)模式
- 2011 Digia從Nokia收購(gòu)了Qt的商業(yè)版權(quán),從此Nokia負(fù)責(zé)Qt on Mobile,,Qt Commercial由Digia負(fù)責(zé)
- 2014年4月,Digia公司Qt開(kāi)發(fā)團(tuán)隊(duì)宣布Qt Creator 3.1.0正式版發(fā)布。
- 2014年5月20日,Digia公司Qt開(kāi)發(fā)團(tuán)隊(duì)宣布Qt 5.3正式版發(fā)布。
- 2019年,Qt團(tuán)隊(duì)宣布最新版5.13版本發(fā)布。
3. QT支持的平臺(tái)
Qt支持下述平臺(tái):
MS/Windows - 95、98、NT4.0、ME、2000、XP 、 Vista、Win7、win8、win2008、win10
Unix/X11 -Linux、SunSolaris、HP-UX、CompaqTru64 UNIX、IBMAIX、SGI IRIX、FreeBSD、BSD/OS和其它很多X11平臺(tái)
Macintosh -Mac OS X
Embedded - 有幀緩沖(framebuffer)支持的嵌入式Linux平臺(tái),Windows CE、Symbian、Symbian^3、Symbian Anna、Symbian Belle、MeeGo、haiku-os。
4. QT的優(yōu)點(diǎn)
A、優(yōu)良的跨平臺(tái)特性
Qt支持下列操作系統(tǒng): Microsoft Windows,Linux,Solaris, SunOS, HP-UX, Digital UNIX (OSF/1,Tru64),Irix,FreeBSD,BSD/OS,SCO,AIX,OS390,QNX等等。
B、面向?qū)ο?/strong>
Qt的良好封裝機(jī)制使得Qt的模塊化程度非常高,可重用性較好,對(duì)于用戶開(kāi)發(fā)來(lái)說(shuō)非常方便。 Qt提供了一種稱為signals/slots的安全類型來(lái)替代 callback,使得各個(gè)元件之間的協(xié)同工作變得十分簡(jiǎn)單。
C、豐富的API
Qt包括多達(dá)250個(gè)以上的C++類,還提供基于模板的collections, serialization,file,I/O device,directory management,date/time類。
D、支持2D/3D圖形渲染,支持OpenGL
E、大量的開(kāi)發(fā)文檔
F、XML支持
5. QT開(kāi)發(fā)工具
QT開(kāi)發(fā)工具包含 Qt Creator、Qt Designer、Qt Linguist、Qt Assistant、Qmake 。
1、Qt Creator
Qt Creator是用于Qt開(kāi)發(fā)的輕量級(jí)跨平臺(tái)集成開(kāi)發(fā)環(huán)境。
2、Qt Designer
Qt Designer是強(qiáng)大的拖曳式圖形化用戶界面排版和設(shè)計(jì)工具。
Qt Designer功能如下:
A、支持表單和對(duì)話框的創(chuàng)建,可即時(shí)預(yù)覽
B、與Qt版面系統(tǒng)集成
C、宏大的標(biāo)準(zhǔn)widgets集
D、支持客戶定制的widgets和對(duì)話框
E、與Microsoft Visual Studio .NET無(wú)縫集成
Qt Designer優(yōu)勢(shì)如下:
A、大大加快了界面的設(shè)計(jì)過(guò)程
B、支持所有平臺(tái)上的本地外觀感覺(jué)
C、開(kāi)發(fā)者能在自行選擇的工作環(huán)境內(nèi)充分發(fā)揮其現(xiàn)有技能
3、Qt Linguist
Qt Linguist一整套工具,支持對(duì)Qt應(yīng)用作快捷無(wú)誤的翻譯,是一組能理順國(guó)際化工作流的工具。
Qt Linguist功能如下:
A、采集所有的用戶界面文本并以一個(gè)簡(jiǎn)潔的窗口將其展現(xiàn)給人工譯者
B、支持所有語(yǔ)言
C、從單一應(yīng)用的二進(jìn)制程序內(nèi)部提供同時(shí)多語(yǔ)言支持及同時(shí)多寫(xiě)入系統(tǒng)
Qt Linguist優(yōu)勢(shì)如下:
A、大大加快了翻譯/本地化進(jìn)程
B、與Qt的語(yǔ)言敏感排版引擎協(xié)同,以創(chuàng)建與語(yǔ)言不相關(guān)的簡(jiǎn)潔一致的界面
C、輕松應(yīng)對(duì)國(guó)際市場(chǎng)
4、Qt Assistant
Qt Assistant是可定制可重發(fā)布的幫助文件和文檔閱讀器。
Qt Assistant功能如下:
A、簡(jiǎn)單明快的web瀏覽器般導(dǎo)航、書(shū)簽和文檔文件連接
B、支持富文本HTML
C、全文本關(guān)鍵詞查閱
D、可定制并隨Qt供應(yīng)
Qt Assistant優(yōu)勢(shì)如下:
A、無(wú)需再?gòu)念^開(kāi)始構(gòu)建幫助系統(tǒng)
B、充分利用現(xiàn)有的HTML技能
C、以方便搜尋和導(dǎo)航的格式向最終用戶提供文檔
5、Qmake
Qmake跨平臺(tái)makefile生成器。
Qmake功能如下:
A、讀取工程源碼,生成依賴關(guān)系樹(shù),生成平臺(tái)相關(guān)工程和makefiles
B、與Visual Studio及Xcode集成
Qmake優(yōu)勢(shì)如下:
A、無(wú)需擔(dān)憂跨平臺(tái)編譯
B、降低對(duì)makefile手工構(gòu)建的需求度
5. QT模塊
QT模塊分為QT基礎(chǔ)模塊和QT擴(kuò)展模塊。
二、QT環(huán)境搭建(CentOS7)
安裝QT5.9(不要在Xhsell上,要在CentOS上)
- 資源下載網(wǎng)址:QT官網(wǎng)
這里我選擇的是 qt-opensource-linux-x64-5.9.5.run
- 在Centos使用wget來(lái)下載
安裝
預(yù)安裝
界面化的安裝過(guò)程,一路next下來(lái),實(shí)在看不懂英文就有道一下。遇見(jiàn)登錄,可以選擇跳過(guò)。
配置環(huán)境變量(所有的路徑以自己安裝QT的位置決定),這一步至關(guān)重要!!!
所有的路徑以自己安裝QT的位置決定
所有的路徑以自己安裝QT的位置決定
所有的路徑以自己安裝QT的位置決定
所有的路徑以自己安裝QT的位置決定
所有的路徑以自己安裝QT的位置決定
將路徑加入到 /etc/ld.so.conf(root)中,見(jiàn)下圖:
/etc/ld.so.conf:
進(jìn)入.bashrc中,vim ~/.bashrc
在PATH后加入:
- 在/etc/profile當(dāng)中配置(root):
- 在~/.bashrc當(dāng)中配置(普通):
都要source或者重啟一下!
總結(jié)
以上是生活随笔為你收集整理的QT简介及QT环境搭建的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: HTTP和HTTPS总结
- 下一篇: QT入门