开发平台: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
就可以看到界面了。
转自武汉华嵌:www.embedhq.org |