开发平台:ubuntu 7.04
目标平台:S3c2410
开发工具:arm 交叉工具链版本3.4.5
qt4版本:qt-embedded-linux-opensource-src-4.4.3.tar.gz(可到trolltech的ftp下载)
源码版本:linux-2.6.8
一. 到内核查看是否支持LCD驱动、framebuffer
cd /source/kernel/linux-2.6.8
make menuconfig
在界面中找到Graphics support
进入查看Support for framebuffer devices 和 S3C2410 LCD framebuffer support两个选项是否被选中,选中代表内核已支持。否则选中两个选项,然后保存退出, make zImage
将新生成的内核镜像烧写到开发板上。
二. 将QtEmbeded 源码包解压后,把configsh文件考到解压后的目录中,可以根据实际情况修改configsh文件中第一行制定的安装目录
./configsh
(configsh脚本内容如下:
#!/bin/sh
./configure -prefix /home/linux/qt4_port/qt/build/
-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 /
-no-armfpa
)
make && make install
这个时候在指定的安装目录会出现如下目录:bin include lib mkspecs plugins translations
三. 将开发机下的linux-2.6.8文件系统用nfs挂载到开发板上(开发板上/var目录下为可写),
mount –t nfs –o nolock 192.168.1.100:/source/rootfs /var/mnt
然后将上一步生成的lib库文件考到挂载的根文件系统的/home/qt/build/lib目录下
cp /home/linux/qt4_port/qt/build/lib/libQt* /source/rootfs/home/qt/build/lib
四. 拷贝显示中文的文泉驿字体到根文件系统的相应目录下:
cp /home/linux/qt4_port/qt/build/lib/fonts/wenquanyi_160_75.qpf /
/source/rootfs/home/qt/build/fonts
五. 用qt编一个helloworld 程序进行测试。使用qmake、make对程序进行编译。
注意:一定要用qtembed安装目录下bin/下面的qmake
/home/linux/qt4_port/qt/build/bin/qmake –project
/home/linux/qt4_port/qt/build/bin/qmake
make
六.将上一步生成的可执行文件helloworld考到挂载的根文件系统下
在开发板上设置环境变量
export QTDIR=/var/mnt /home/qt/build
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export PATH=$QTDIR/bin:$PATH
export QT_QWS_FONTDIR=/var/mnt /home/qt/build/fonts
最后运行helloworld程序
./helloworld -qws
就可以看到界面了。