歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Linux之Qt4.6.3移植----Ubuntu10.10

Linux之Qt4.6.3移植----Ubuntu10.10

日期:2017/3/1 11:00:33   编辑:Linux編程

1移植准備

1.1編譯所需環境和資源

1. Qt源碼包:Qt4.6源碼包 :qt-everywhere-opensource-src-4.6.3.tar.gz

2. 交叉編譯工具:arm-linux-gcc-4.4.3-20100728.tar

3. 觸摸屏校驗工具 :tslib-1.4.tar.gz

4. PC運行的OS 環境:Ubuntu10.10

5. mini2440開發板

1.2安裝交叉編譯器

u 把交叉編譯工具包放到根目錄下,執行命令如下:

tar zxvf arm-linux-gcc-4.4.3-20100728.tar –C /

u 解壓後產生一個目錄:/opt/FriendlyARM/toolschain/4.4.3,進入該目錄,進入bin目錄,執行命令如下:

pwd>>/root/.bashrc

u 接著執行命令如下:

vi /root/.bashrc

然後修改最後一行:export PATH=/opt/FriendlyARM/toolschain/4.4.3/bin:$PATH

u 為了使配置的環境立即生效,接著執行如下命令:

source /root/.bashrc

u 查看版本信息,執行命令:

arm-linux-gcc –v

u 出現正確版本,說明配置交叉編譯器成功。

1.3 安裝觸摸屏校驗工具

n 把tslib-1.4.tar.gz放到一個目錄下,比如/opt目錄下。接著執行命令如下:

tar zxvf tslib-1.4.tar.gz

n 執行命令cd tslib,進入tslib當前目錄,接著執行命令如下:

Source autogen.sh

n 然後接著執行配置命令:

./configure --prefix=/usr/local/tslib --host=arm-linux ac_cv_func_malloc_0_nonnull=yes

n 最後執行編譯命令和安裝命令如下:

make

make install

n 如果以上步驟沒錯,則可以在/usr/local/tslib下出現我們需要的庫文件,這些庫文件我們移植時會用到。

1.4 編譯Qt-4.6.3庫文件

n 把qt-everywhere-opensource-src-4.6.3.tar.gz放到/opt目錄下。接著執行命令如下:

tar zxvf qt-everywhere-opensource-src-4.6.3.tar.gz

n 接著把解壓出來的目錄重名成qt-embeded-4.6.3-arm,執行命令如下:

mv qt-everywhere-opensource-src-4.6.3.tar.gz qt-embedded-4.6.3-arm

n 進入qt-embedded-4.6.3-arm,然後執行配置命令,命令如下:

./configure -prefix /usr/local/Trolltech/QtEmbedded-4.6.3-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-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/usr/local/tslib/include -L/usr/local/tslib/lib

n 接著繼續執行編譯和安裝命令,命令如下:

make

make install

n 以上都成功的話,就會在目錄/usr/local/Trolltech/QtEmbedded-4.6.3-arm下看到基於ARM處理平台的Qt庫文件。

2開始移植

2.1移植庫到mini2440開發板

n 在開發板上建立目錄如下:

/usr/local/Trolltech/QtEmbedded-4.6.3-arm/bin

/usr/local/Trolltech/QtEmbedded-4.6.3-arm/lib/fonts

/usr/local/tslib

n 復制所需運行庫

把在pc機上編譯好的庫/usr/local/Trolltech/QtEmbedded-4.6.3/lib/下的所有文件全部復制到 /usr/local/Trolltech/QtEmbedded-4.6.3-arm/lib/下

n 復制觸摸屏軟件

把在pc機上編譯安裝好/usr/local/tslib/目錄下的所有文件都復制到開發板/usr/local/tslib/下。

2.2在mini2440建立環境變量

n 用命令執行:vi /etc/profile,在裡面增加如下內容:

export QTDIR=/usr/local/Trolltech/QtEmbedded-4.6.3-arm

export QPEDIR=/usr/local/Trolltech/QtEmbedded-4.6.3-arm

export TSLIB_ROOT=/usr/local/tslib

export PATH=$QTDIR/bin:$PATH

export TSLIB_CONSOLEDEVICE=none

export TSLIB_FBDEVICE=/dev/fb0

export TSLIB_TSDEVICE=/dev/input/event0

export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf

export TSLIB_CALIBFILE=/etc/pointercal

export QWS_MOUSE_PROTO=Tslib:/dev/input/event0

export QWS_DISPLAY=LinuxFb:/dev/fb0

export QWS_SIZE=240x320

export LD_LIBRARY_PATH=$TSLIB_ROOT/lib:$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH

n 修改mini2440上/usr/local/tslib/etc/ts.conf 文件:把第二行# module_raw input 前面的#和空格去除,保存退出。

2.3移植實現

n 首先在pc機上編譯,進入程序(test_hello)目錄,然後執行命令如下:

/usr/local/Trolltech/QtEmbedded-4.6.3-arm/bin/qmake

<FONT face=""">

n 然後執行編譯命令:make

n 執行完後,用命令:file test_hello 是否為二進制文件。如果是,則說明編譯成功,可以移植到mini2440開發板了。

把編譯好的程序test_hello通過u盤復制到開發板/usr/local/Trolltech/QtEmbedded-4.6.3-arm/bin/目錄下

n 然後通過終端執行./test_hello –qws –fonts wenquanyi,如果開發板出現自己的程序說明執行成功。

Copyright © Linux教程網 All Rights Reserved