QT開發環境搭建

1、Qt發展史

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

2、自問自答之問題探索

1. Qt SDK是什麼?

是一個編譯好、直接可使用的軟件開發包,裏邊包含:編譯好的Qt庫、IDE集成開發工具;  bash

可是這些庫和開發工具只運行在Windows、Linux/X十一、Mac這三種主流的操做系統上邊;  app

若是要把Qt移植到嵌入式平臺上邊的話是須要從新編譯Qt庫的源碼(使用交叉工具)。框架

2. 瞭解官方的開發資源

(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/                        官方歸檔目錄,「歸檔」個人理解就是保存有價值的版本文件

3.使用官方資料部署開發環境

(1)Windows 7 - 64bit

  • 在官網下載QtCreate,安裝;
  • 選好要使用的Qt庫版本:qt-opensource-windows-x86-mingw482-4.8.6-1.exe;
  • 安裝Qt代碼編譯器:
    ①Microsoft Visual C++ :通常是VS2010這類開發軟件使用;
    ②MinGW:在Windows上叫作 MinGW(Minimalist GNU for Windows)
    推薦選擇MinGW-w64版本的,下載地址http://sourceforge.net/projects/mingw-w64/,下載mingw-w64-install.exe
    接着進行在線安裝,注意在安裝窗口的「architecture」項選擇:x86_64,「version」選:4.8.2,這個要和Qt庫要求對應,其餘自由發揮。
  • 安裝完以後修改win7系統的環境變量「path」,添加上安裝完以後「xxx/mingw-w64/bin」路徑
  • 安裝Qt庫,放到最後是由於安裝的過程要使用到MinGW編譯器;
  • 剩下的就是如何配置使用QtCreate的問題。

(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

  • 從官網下載源碼包:qt-everywhere-opensource-src-4.8.6.tar.gz
  • 放到Ubuntu系統中,解壓,解壓以後的源碼默認編譯配置就是適用於PC版的Linux系統,因此不用再去修改編譯器相關的東西。
  • 配置生成Makefile文件:./configure   不帶配置選項的時候是生成動態庫
  • make            開始編譯
  • make install   開始安裝,默認安裝在 /usr/local/Trolltech/Qt-4.8.6
  • 配置環境變量
    vim /etc/bash.bashrc    添加下面一行的內容:
    export PATH=/usr/local/Trolltech/Qt-4.8.6/bin:$PATH
  • 使環境變量生效
    source /etc/bash.bashrc 
  • 查看qmake版本號:qmake -v,顯示上邊的Qt版本號即安裝成功。
  • 編寫測試程序:main.cpp,放在test目錄下
    #include <QApplication> 
    #include <QPushButton>
    int main(int argc,char *argv[])
    {

          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目錄中。

相關文章
相關標籤/搜索