Tiny6410嵌入式Qt開發環境的搭建

一、準備好交叉編譯所需要的軟件包

(1)arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz(交叉編譯環境)
(2)qt-everywhere-opensource-src-4.8.5.tar.gz(Qt的源碼)
(3)qt-creator-linux-x86_64-opensource-2.5.2.bin(我的系統是64位,所以選擇x86_64)
(4)tslib-1.4.tar.gz(觸摸屏校驗工具)
安裝包:
鏈接:https://pan.baidu.com/s/1h4dVleRGi8fV1lfMl2zoLg
提取碼:j33n

二、環境的搭建

2.1系統環境

主機操作系統:ubuntu14.04
主機編譯器:gcc4.8.4
交叉編譯器:arm-linux-gcc-4.5.1

2.2安裝交叉編譯器

(1)首先以root用戶登入

(2)複製arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz到tmp文件夾裏

(3)解壓tar xvzf arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz -C /
把arm-linux-gcc安裝到/opt/FriendlyARM/toolschain/4.5.1目錄

(4)配置下編譯環境路徑 在控制檯下輸入 gedit .bashrc,文件末尾加上

export PATH=$PATH:/opt/FriendlyARM/toolschain/4.5.1/bin

在這裏插入圖片描述
(5)輸入:source .bashrc

(6)命令行輸入arm-linux-gcc -v,出現以下界面安裝成成功
在這裏插入圖片描述

2.3安裝觸摸屏校驗工具

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

執行命令cd tslib,進入tslib當前目錄,接着執行命令如下:
#./autogen.sh

然後接着執行配置命令:
#./configure --prefix=/usr/local/tslib --host=arm-linux ac_cv_func_malloc_0_nonnull=yes

最後執行編譯命令和安裝命令如下:
1.make
2.make install
如果以上步驟沒錯,則可以在/usr/local/tslib下出現我們需要的庫文件,這些庫文件我們移植時會用到。

編譯期間出現的錯誤:./autogen.sh: 4: autoreconf: not found
解決辦法:sudo apt-get install autoconf automake libtool

2.4 安裝QtCreator

qt-creator-linux-x86_64-opensource-2.5.2.bin拷貝到Linux系統中,在終端中把路徑切換到qt-creator-linux-x86_64-opensource-2.5.2.bin所在的路徑。

運行命令:./qt-creator-linux-x86_64-opensource-2.5.2.bin 就會出現圖形安裝界面;下面的安裝步驟就和我們在windows下安裝軟件差不多。

注意:下的版本要和你的操作系統相匹配,32位的系統下對應32位的應用程序;

2.5 編譯Qt庫源碼

2.5.1解壓

將源碼qt-everywhere-opensource-src-4.8.5.tar.gz 進行解壓,並複製兩份到/usr/local目錄下,並分別命名爲qt-pc,qt-arm。
在這裏插入圖片描述

2.5.2 編譯PC版

進入qt-pc目錄,執行如下操作:
#./configure
#make
#make install

編譯過程中出現的問題:出錯:Basic XLibfunctionality test failed!
這個錯誤主要是因爲,XLib庫沒有安裝,所以在編譯X11平臺時,應該保證,
以下命令正確執行:sudo apt-get install libx11-dev libxext-dev libxtst-dev
注意:可以使用 make confclean 命令 把以前的配置信息清除掉,然後再重新配置。

2.5.3編譯ARM版

進入qt-arm目錄,執行如下操作:
#vim /usr/local/qt-arm/qt-everywhere-opensource-src-4.8.5/mkspecs/qws/linu x-arm-g++/ qmake.conf
在這裏插入圖片描述
命令行輸入:
#./configure -prefix /usr/local/Trolltech/QtEmbedded-4.8.5-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-pch -no-separate-debug-info -nomake examples -nomake tools -nomake docs -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib
#make
#make install

安裝完成後,在/usr/local/Trolltech目錄中有兩個個文件夾:Qt-4.8.5、
QtEmbedded-4.8.5-arm。

在這裏插入圖片描述
QtCreator編譯前的配置
打開QtCreator ,工具---->選項—>構建和運行 進行設置,在Qt版本菜單下,手動設置選擇qmake路徑。

在這裏插入圖片描述
在這裏插入圖片描述
qmake路徑前有感嘆號
選擇Tool Chains點擊add添加GCC
在這裏插入圖片描述
構建項目
在這裏插入圖片描述
在這裏插入圖片描述
運行的時候
在這裏插入圖片描述
編譯成功後,查看下文件是否是ARM格式的,用file來查看
在這裏插入圖片描述
用SD卡或者tftp把編譯好的代碼拷貝到Tiny6410板子中
#cp /sdcard/ARMTEST /bin
#chmod +x /bin/ARMTEST
#ARMTEST -qws
在這裏插入圖片描述
即可運行

錯誤區:
1、 在開發板運行時出現類似錯誤:error while loading shared libraries:
libts-0.0.so.0: cannot open shared object file: No such file or directory
在這裏插入圖片描述
安裝QtEmbedded-4.8.5-arm目錄下,把.so文件都拷貝到開發板的/lib文件下
在這裏插入圖片描述

2、 編譯出錯:cc1: fatal error: .pch/release-shared-emb-arm/QtGui: No such file or directory 解決方案:
在這裏插入圖片描述

3、由於老的arm-linux-gnu工具鏈不支持64位,因此需要安裝32位庫
sudo apt-get instatll lsb-core

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