1991年,由奇趣科技開發的跨平臺C++圖形用戶界面應用程序開發框架;linux
2008年,Nokia從Trolltech公司收購Qt, 並增長LGPL的受權模式;程序員
2011年,Digia從Nokia收購了Qt的商業版權,今後Nokia負責Qt on Mobile, Qt Commercial由Digia負責;vim
2012年,諾基亞宣佈將Qt軟件業務出售給芬蘭IT服務公司Digia。 2013年,7月3日,Digia公司Qt開發團隊在其官方博客上宣佈Qt 5.1正式版發佈。windows
是一個編譯好、直接可使用的軟件開發包,裏邊包含:編譯好的Qt庫、IDE集成開發工具; bash
可是這些庫和開發工具只運行在Windows、Linux/X十一、Mac這三種主流的操做系統上邊; app
若是要把Qt移植到嵌入式平臺上邊的話是須要從新編譯Qt庫的源碼(使用交叉工具)。框架
(1)訪問Qt的官方網站 http://www.qt.io/,進入「Download」欄 ,根據開發用途選擇Qt版本:工具
①商用-收費;②內部部署、我的使用、學生使用;③基於LGPL或GPL協議的開放源代碼式開發。學習
堅決果斷,選擇(2)或(3),結果同樣,選(2)的過程當中會問你要不要捐贈一些錢。開發工具
(2)接着來到下載網頁 http://www.qt.io/download-open-source/ ,在這個網頁中的橫欄列表以下:
Qt Online Installers 在線Qt安裝器,這個安裝器會幫你下載並安裝;
Qt Offline Installers 離線安裝,要本身下載完以後本身動手安裝;
Qt Creator 官方的IDE開發工具;
Other Downloads 其餘下載:有如下兩點值得關注的:
-->①Qt repositories at code.qt.io Qt貯藏室-實質就是:Qt項目Git存儲庫,項目哦!
-->②Archive for old versions 舊版本的歸檔文件:在這裏能夠找到全部以前的Qt開發包【極力推薦這裏下載】
Pre-releases 發佈版本,應該是指最新的發佈版本
(3)從舊版本的歸檔中下載 http://download.qt.io/ 簡單介紹
主目錄介紹:
snapshots/ 快照:
online/ 在線資源:
official_releases/ 官方發佈的穩定版本 【這裏下載SDK包或Qt開發源碼】
ministro/ 部門,指的是 Android 方面的資料
learning/ 學習指導方面的視頻文檔資料,貌似大部分是Qt Quick的
development_releases/ 開發版本,包括最新正在測試的版本、之前的測試版本
community_releases/ 社區發佈版,「民間版」
archive/ 官方歸檔目錄,「歸檔」個人理解就是保存有價值的版本文件
(1)Windows 7 - 64bit
(2)Ubuntu 12.04 - 64bit
sudo apt-get install libfontconfig1-dev libfreetype6-dev libx11-dev libxcursor-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxrandr-dev libxrender-dev
QApplication app(argc,argv);
QPushButton button("hello button");
button.show();
app.exec();
return 0;
①qmake -project //生成工程文件test.pro
②添加模塊:vim test.pro
QT += widgets
③qmake //生成Makefile
④make //編譯Qt工程
⑤./test //開始運行,結果:
【附註:編譯版本】
Debug版:調試版本,它包含調試信息,而且不做任何優化,便於程序員調試程序
Release版:發佈版本,它每每是進行了各類優化,使得程序在代碼大小和運行速度上都是最優的,以便用戶很好地使用。
(3)嵌入式平臺Qt庫編譯 - A10處理器
主機編譯環境:Ubuntu12.04-64bit OS
①確保主機已經安裝好交叉編譯器(A10支持硬件浮點計算)注:若是Ubuntu上已經安裝過其餘版本的交叉編譯器,要把相應的環境變量註釋掉的。
sudo apt-get install binutils-arm-linux-gnueabihf gcc-arm-linux-gnueabi
sudo apt-get install gcc-arm-linux-gnueabihf cpp-arm-linux-gnueabihf
sudo apt-get install g++-arm-linux-gnueabihf
②一樣使用Ubuntu12.04的Qt源碼,qt-everywhere-opensource-src-4.8.6.tar.gz,解壓以後修改編譯器--交叉編譯工具:
sudo vim mkspecs/qws/linux-arm-gnueabi-g++/qmake.conf ,修改以下內容:
QMAKE_CC = arm-linux-gnueabihf-gcc
QMAKE_CXX = arm-linux-gnueabihf-g++
QMAKE_LINK = arm-linux-gnueabihf-g++
QMAKE_LINK_SHLIB = arm-linux-gnueabihf-g++
QMAKE_AR = arm-linux-gnueabihf-ar cqs
QMAKE_OBJCOPY = arm-linux-gnueabihf-objcopy
QMAKE_STRIP = arm-linux-gnueabihf-strip
③不使用優化:修改以下文件
sudo vim mkspecs/common/g++-unix.conf 修改成:
QMAKE_LFLAGS_RELEASE += -Wl,-O0
④生成Makefile文件:編譯靜態庫、不編譯demo、tool等
./configure -static -nomake demos -nomake examples -nomake tools -no-exceptions
期間選擇:o -> y
⑤make 開始編譯
⑥make install 安裝庫到默認的路徑/usr/local/Trolltech/QtEmbedded-4.8.6-arm,以後Qt Creator就可使用這個目錄下邊的qmake等工具來編譯嵌入式平臺的Qt程序了。
⑦最後:要讓交叉編譯的Qt可執行程序在開發板上運行起來還須要把QtEmbedded-4.8.6-arm目錄下的include和lib目錄文件拷貝到開發板Linux操做系統的根目錄的/include和/lib目錄中。