1,我用busybox成功编译出了一个文件系统,并且测试挂在都通过了。
2,我在linux下面搭建了QT for ARM的工作环境,并且也搭建成功了,能够顺利交叉编译出QT for ARM的可执行文件。我安装的版本是4.5.3
3,现在我想制作一个带有QT的文件系统,测试并验证整个系统,目前就卡在这里,希望哪位高手能给我指点一下教我如何制作带QT的文件系统,假如有文档那是最好的了,非常感谢
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
下面是在DM6446平台移植Qt Embeded 4.5.3的例子,供你参考。其他平台类似。
Qt Embeded 4.5.3移植:
移植过程中使用的主机系统是Fedora 8,主机编译器版本为:gcc version 3.4.1,交叉编译器:arm_v5t_le-gcc(MontaVista Linux提供)。
另外需要如下两个源码包:
qt-embedded-Linux-opensource-src-4.5.3.tar.gz
qt-x11-opensource-src-4.5.3.tar.gz
这两个源码包分别对应于Linux下桌面开发的Qt4图形库和嵌入式Linux设备开发的图形库。使用tar命令来解压这两个源码包,以便进行配置编译开发,过程如下:
#tar zxvf qt-embedded-Linux-opensource-src-4.5.3.tar.gz
#tar zxvf qt-x11-opensource-src-4.5.3.tar.gz
由于Qte4的图形库对于嵌入式设备来说十分庞大,因此还需要对其参数进行配置和裁剪。由于使用的交叉工具链的不同还需要修改其针对arm平台的编译脚本才能保证编译的过程正常进行。
在Qte4的解压目录下,进入mkspecs/qws/Linux-arm-g++/目录,打开文件qmake.conf,将所有的arm-Linux-替换为arm_v5t_le-就可以指定成达芬奇平台的交叉工具链。可以通过Vim编辑器打开该文件切换到命令模式,然后通过以下命令完成全文的替换:
:%s/arm-Linux-/arm_v5t_le-/g
交叉工具链制定后进入Qte4的源码目录通过以下步骤完成对工程配置过程:
./configure \
-release \
-shared \
-no-largefile \
-no-xmlpatterns \
-no-phonon \
-no-phonon-backend \
-no-scripttools \
-no-mmx \
-no-3dnow \
-no-sse \
-no-sse2 \
-qt-freetype \
-qt-gfx-Linuxfb \
-no-gfx-transformed \
-no-gfx-multiscreen \
-no-gfx-vnc \
-embedded arm \
-qt-sql-sqlite \
-opensource \
-no-qt3support \
-xplatform qws/Linux-arm-g++ \
-little-endian
配置完毕后,就可以编译安装Qte4,执行步骤如下:
#make
#make install
如果要在DVEVM开发板上要运行Qt4的程序,那么在板子上就应该有相应的Qt4库文件,移植的过程就是把已经通过交叉编译链编译好的Qt4库文件拷贝到开发板上。由于DVEVM开发板是使用NFS共享根文件系统启动,因此,在前期测试时可以先将库文件拷贝到共享的根文件系统下进行测试。当测试完成后,再将库文件整体移植到开发板上。
首先把Qte编译生成的库文件拷贝到与NFS启动的根文件系统相同的目录中:
cp –f lib/ /opt/NFS/usr/local/Trolltech/QtEmbedded-4.5.3-arm
然后对环境变量进行设置。该设置是在根文件系统中,路径是相对于根文件系统的路径进行设置:
export QTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.3-arm
export PATH=/usr/local/Trolltech/QtEmbedded-4.5.3-arm/bin:$PATH
export QWS_DISPLAY=LinuxFb:/dev/fb/0
export LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.3-arm/lib:$LD_LIBRARY_PATH
第一个参数指定了Qte所在的目录,第二个参数是将Qte所在目录导入环境变量,第三个参数指定了Qte的绘制设备,第五个参数是将Qte的库文件目录导入环境变量。