QT4在ubuntu上的安裝及在mini2440上的移植

1.安裝Qt4

在終端輸入

sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer

其中:
 qt4-dev-tools 中包括了Qt Assistant,Qt Linguist,Qt Creator
    qt4-doc 這個是幫助文檔
    qt4-qtconfig Qt的配置工具,這個裝好默認好
    qt4-demos 官方的一些Demo
    qt4-designer 可視化窗體設置工具

所安裝的工具有些還不知道用處,先安裝了在說吧,安裝後查看發現Qt Creator並沒有被安裝上,在ubuntu的軟件中心查找這個軟件安裝,安裝後查看Qt Creator是基於QT4.6.2版本的。

2.用Qt Creator創建我的第一個Qt程序hello world

1.打開安裝好的Qt Creator軟件,選擇File-〉New File or Project 打開界面嚮導,找到Projects選項,選擇Empty Qt4 Project,對項目命名,跟着嚮導做,新建一個空的Qt4項目。

2.右鍵項目文件夾,點擊“添加新文件”,在這裏選擇C++ ->C++源文件,或者選擇  概要->文本文件,只是在下面命名的時候加上後綴.cpp就可以了。文件名不一定要寫成main.cpp,任何名字都可以。

3.編輯源代碼,點一下左下角的第一個綠色三角形按鈕就可以了。

#include <QApplication>
#include <QLabel>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QLabel hello("<h2><i>Hello</i><font color=red> Qt!</font></h2>");
   hello.show();
    return app.exec();
}

4.程序運行結果如下:

3.安裝ARM版QT4.

目前安裝好的軟件算是PC版的QT4,按照網上查看的PC版,X86版,ARM版下載好響應的QT軟件版本,分成三個不用的包,做不同的編譯即可。網上某人說的似乎是4.6(不確定)版本後安裝不同的版本只需要一個包就可以例如qt-everywhere-opensource-src-4.6.3.tar.gz即可。

在安裝的時候按照網上的一種方法,終端命令輸入安裝的,查看版本是4.6.2的,ARM版的也按照響應的版本吧。(不同的版本移植時應該會有麻煩的)

下載qt-everywhere-opensource-src-4.6.3.tar.gz,解壓

在該目錄下執行

./configure -prefix /usr/local/Trolltech/QtEmbedded-4.6.2-arm -opensource -confirm-license -release -shared -embedded arm -xplatform qws/linux-arm-g++ -depths 16,18,24 -fast -optimized-qmake -pch -qt-sql-sqlite -qt-libjpeg -qt-zlib -qt-libpng -qt-freetype -little-endian -host-little-endian -no-qt3support -no-libtiff -no-libmng -no-opengl -no-mmx -no-sse -no-sse2 -no-3dnow -no-openssl -no-webkit -no-qvfb -no-phonon -no-nis -no-opengl -no-cups -no-glib -no-xcursor -no-xfixes -no-xrandr -no-xrender -no-separate-debug-info -nomake examples -nomake tools -nomake docs -qt-mouse-tslib -I/rootfs/opt/tslib/include -L/rootfs/opt/tslib/lib

紅色部分是tslib的安裝目錄。-prefix /usr/local/Trolltech/QtEmbedded-4.6.2-arm是ARM版Qt的安裝目錄,注意此目錄會影響跟文件系統下QT庫的存放路徑。

執行過程中會有錯誤提示

qt-everywhere-opensource-src-4.6.2/lib/libQtGui.so: undefined reference to `ts_read_raw'

解決的方法:

修改qt-everywhere-opensource-src-4.6.2/mkspecs/qws/linux-arm-g++/qmake.conf 文件(添加lts參數):
QMAKE_CC                = arm-linux-gcc -lts
QMAKE_CXX               = arm-linux-g++ -lts
QMAKE_LINK              = arm-linux-g++ -lts
QMAKE_LINK_SHLIB        = arm-linux-g++ -lts

然後make

sudo make install

即可

4.配置Qt Creator開發環境

啓動Qt-creator。

在Qt-creator菜單欄Tools—〉Options…打開Options窗口。

在Options界面左側,點擊Qt4—〉Qt Versions右側顯示Qt Versions設置界面。

因爲我首先使用命令安裝的,此界面默認有一個qmake-qt4的命令路徑,此路徑的PC版的QT4路徑。

在Qt Versions界面中點擊那個藍色的大“”號圖標

在下方Version Name:文本框內輸入Qt的版本名,可以隨便填,能區分各個版本即可(如pc版取Qt4.6.2-pc、x86版取QtE4.6.2-x86、arm版取QtE4.6.2-arm)。

單擊Qmake Location:右側Browse…按鈕,在彈出的“Select QMake Executable”窗口中找到對應版本的qmake程序(按照響應的安裝路徑,例如,pc版路徑:/usr/local/Trolltech/Qt-4.6.2/bin/qmake,x86版路徑:/usr/local/Trolltech/QtEmbedded-4.6.2/bin/qmake,arm版路徑:/usr/local/Trolltech/QtEmbedded-4.6.2-arm/bin/qmake),單擊打開,回到Qt Versions界面。

默認的PC版的路徑名是QT in PATH

arm版我輸入的名字是QT-ARM

回到Qt Versions界面,單擊Debugging Helper:右側Rebuild按鈕,等待片刻,看到Debugging Helper:後出現一個綠色的“”即可。

添加完畢,單擊OK按鈕關閉Options窗口。

5.arm編譯並移植
這纔是我們的重點,PC版下我們已經體驗過一次,現在體驗在我們的觸摸屏上的顯示。

在Qt-creator界面左側點擊Projects圖標,打開工程設置界面。

從上往下,

在Edit Project Settings for Project books——〉Build Settings——〉Edit Build Configuration:單擊Add,在下拉列表中選擇Using Qt Version “QT-ARM”彈出對話框單擊Ok按鈕,在Edit Build Configuration:下會出現藍色的Make QT-ARM Release active.字符,

單擊激活QT-ARM Release。

在Run Settings——〉Edit run configuration:右側單擊Show Details按鈕,在打開的下拉列表中Arguments:文本框中添加參數“-qws”。

設置完畢,點擊Edit圖標,回到編輯界面。

編譯:在Build菜單下,先Clean Project “Hello”,然後Build Project “Hello”。

要想使程序在開發班上運行,需要先把QT的庫文件拷貝到開發班跟文件系統下。

將編譯好的ARM版下的Hello程序拷貝到開發板,運行提示找不到庫文件,根據提示得知,需要將庫文件存放在和在PC上一樣的路徑,既之前設置好的ARM版的安裝路徑/usr/local/Trolltech/QtEmbedded-4.6.2-arm/lib。

在開發板上運行,出現了一樣的界面。

[root@MINI2440:/opt/qt]#./Hello -qws

在PC版上編譯時需要把編譯的qmake命令在設置回來,-qws也需要去掉,當然編譯ARM版時也是同樣的。

萬里長征邁起了第一步。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章