首页 / 操作系统 / Linux / Qt-embedded-linux-opensource-src-4.5.1移植到mini2440开发板技术说明
用过友善之臂的朋友都知道,友善之臂mini2440内置的是qt2的界面设计,但是现在q4逐渐成为主流。如何把qt4成功移植到mini2440非常不容易,本人也费了很到的功夫才完成了这样的工程。现在我把自己的经验拿出来与大家分享,希望有兴趣的朋友少走弯路。1.我的环境及所需资源: PC机操作系统:Ubuntu 交叉编译工具:arm-linux-gcc-4.3.2.tar.gz 所需资源: tslib-1.4.tar.gz qt-embedded-linux-opensource-src-4.5.1.tar.gz qt-x11-linux-opensource-src-4.5.1.tar.gz2.安装交叉编译环境: 把arm-linux-gcc-4.3.2.tar.gz放到/tmp 目录下 # tar xzvf arm-linux-gcc-4.3.2.tar.gz -C / #gedit /root/.bashrc 这是编辑/root/.bashrc文件,在最后一行 export PATH=$PATH:/usr/local/arm/4.3.2/bin 注销系统 #arm-linux-gcc -v 可以看到版本信息3,安装tslib-1.4 这是个触摸屏的库文件,据网上说qt4只支持tslib-1.4。我没有实验别的,就用了这个,可以成功。 把tslib-1.4.tar.gz放到/home目录下 #tar xvzf tslib-1.4.tar.gz 解压,cd 到其目录下
安装automake,autoconf,libtool
#sudo apt-get install automake autoconf libtool #cd tslib #./autogen.sh #./configure --profix=/home/mytslib/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes #make #make install 这样以后可以看到/home/mytslib/下有了库文件,移植时会用到!先不详细说明。4.安装qt-x11-linux-opensource-src-4.5.1.tar.gz 把qt-x11-linux-opensource-src-4.5.1.tar.gz放到/opt目录下 #tar xvzf qt-x11-linux-opensource-src-4.5.1.tar.gz #cd qt-x11-linux-opensource-src-4.5.1 #./configure #gmake //过程很长,我用的三个多小时 #gmake install 这是安装PC机上的qt4,方便设计,在PC机上能够成功了,在交叉编译就方便了!然后制作一个运行环境变量的文件,方便改变环境变量设置,如下在当前文件夹下接着输入 #gedit setenv-x11.sh这时会跳出来一个编辑文本,在里面输入: PATH=/usr/local/Trolltech/Qt-4.5.1/bin:$PATH QTDIR=/usr/local/Trolltech/QT-4.5.2 MAINPATH=$QTDIR/man:$MAINPATH LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH export PATH QTDIR MAINPATH LD_LIBRARY_PATH然后保存!在每次进入qt-x11-linux-opensource-src-4.5.1目录中要 #source setenv-x11.sh把环境变量设置好。5,安装qt-embedded-linux-opensource-src-4.5.1.tar.gz 把qt-embedded-linux-opensource-src-4.5.1.tar.gz放到/tmp目录下 在安装qt-embedded-linux-opensource-src-4.5.1.tar.gz之前先在根目录下建立两个目录(即文件夹)如下步骤: #cd / 进入根目录 #mkdir mini2440 这里准备存放qt-embedded-linux-opensource-src-4.5.1的库文件 现在安装qt-embedded-linux-opensource-src-4.5.1.tar.gz #cd /tmp 确定qt-embedded-linux-opensource-src-4.5.1.tar.gz放到/tmp目录下了才行 #tar xvzf qt-embedded-linux-opensource-src-4.5.1.tar.gz #cd qt-embedded-linux-opensource-src-4.5.1. #./configure -prefix= /mini2440 -release -shared -fast -pch -no-qt3support -qt-sql-sqlite -no-libtiff -no-libmng -qt-libjpeg -qt-zlib -qt-libpng -qt-freetype -no-openssl -nomake examples -nomake demos -nomake tools -optimized-qmake -no-phonon -no-nis -no-opengl -no-cups -no-xcursor -no-xfixes -no-xrandr -no-xrender -no-xkb -no-sm -no-xinerama -no-xshape -no-separate-debug-info -xplatform qws/linux-arm-g++ -embedded arm -depths 16 -no-qvfb -qt-gfx-linuxfb -no-gfx-qvfb -no-kbd-qvfb -no-mouse-qvfb -qt-kbd-usb -confirm-license -qt-mouse-tslib -I/home/mytslib/include -L/home/mytslib/libmini2440内的空间有限,所以剪裁很多,注意最后的部分是为了找到触屏的库文件,然后 #make #make install 这样,嵌入式版本的qt4也装成功了,若想进行交叉编译,首先也得改变环境变量,所以也可以在当前目录下建一个环境变量的文件setenv-embedded.sh 如下: #gedit setenv-embedded.sh这时跳出一个编辑文本输入: PATH=/mini2440/bin:$PATH QTDIR=/mini2440 MAINPATH=$QTDIR/man:$MAINPATH LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH export PATH QTDIR MAINPATH LD_LIBRARY_PATH保存退出。每次进行qt4-embedded的交叉编译前先# source setenv-embedded.sh到目前为止,两个版本的qt4在PC机上的安装算是结束了,下一步要移植嵌入式的qt4库文件到开发板。