QT4.4.3 S3C2440移植

来源:互联网 发布:计划软件 编辑:程序博客网 时间:2024/05/16 07:09
一,开发环境:宿主机:ubuntu12.04目标 机:s3c2440交叉 编译 器:arm-linux-gcc-4.4.3交叉编译器路径:/usr/local/arm/4.4.3二,下载源码qt-extended-opensource-src-4.4.3.tar.gzhttp://sourceforge.net/projects/qpe/files/QPE/qtopia/三,构建编译环境并编译1、建立工作目录qtarm# mkdir qtarm2、将压缩包拷贝至此目录cp qt-extended-opensource-src-4.4.3.tar.gz ./qtarm3、进入qtarm目录# cd qtarm   4、安装必要的工具包   # sudo apt-get install libX11-dev libXext-dev libXtst-dev zlib1g-dev注:先把需要安装的库都装好,笔者编译几次都是中途有错误,由于编译比较耗时,每次错误都是噩梦笔者才开始用的是arm-linux-gcc4.3.3到最后有错误无解,后换为arm-linux-gcc4.4.3后,OK了。          5、建立build脚本的权限并执行# touch buid#########################################################!/bin/bashrm qt-extended-4.4.3 -frtar xvzf qt-extended-opensource-src-4.4.3.tar.gzrm -fr buildarmmkdir buildarm#linux-arm-g++  export PATH=/usr/local/arm/4.4.3/bin:$PATHexport TOOLCHAIN=/usr/local/arm/4.4.3export TB_CC_PREFIX=arm-linux-export PKG_CONFIG_PREFIX=$TOOLCHAIN/arm-none-linux-gnueabiQTOPIA_PREFIX_DIR=/home/sxbg/qt4.4.3export QTOPIA_DEPOT_PATH=$PWD/qt-extended-4.4.3export QPEDIR=$PWD/buildarmexport LC_CTYPE="en_US"export LANG="en_US"export LANGUAGE="en_US"cd $QPEDIRecho yes | $QTOPIA_DEPOT_PATH/configure \    -ui-type mobile \    -xplatform linux-arm-g++ \    -arch arm \    -release \    -clean \    -prefix ${QTOPIA_PREFIX_DIR} \    -sound-system oss \    -build-qt \    -no-sxe \    -no-ssl \    -no-v4l2 \    -no-vpn \    -no-phonon \    -no-libamr \    -dynamic-rotation \    -mediaengines cruxus \    -remove-mediaengine gstreamer,helix \    -pictureflow \    -remove-module bluetooth,drm \    -no-dbus \    -no-dbusipc \    -add-displaysize 324x240 \    -extra-qt-embedded-config "-embedded arm -xplatform qws/linux-arm-g++ -no-cups -nomake examples -nomake demos -qt-libjpeg -qt-libmng -qt-libpng -no-dbus -qt-gfx-linuxfb -qt-gfx-transformed -no-gfx-qvfb -no-gfx-vnc -no-gfx-multiscreen -qt-kbd-tty -no-kbd-usb -no-kbd-sl5000 -no-kbd-yopy -no-kbd-vr41xx -no-kbd-qvfb -qt-mouse-tslib -I/home/sxbg/tslib/include -L/home/sxbg/tslib/lib -no-webkit -no-openssl -no-phonon -no-phonon-backend -no-nas-sound -no-exceptions -svg" \     -extra-qt-config "-no-webkit" \    2>&1 | tee ./qtopiaconfig.logbin/qbuild 2>&1 | tee ./qtopiamake.logbin/qbuild image#######################################################其中QTOPIA_PREFIX_DIR是开发板rootfs文件系统里面qt的安装运行目录,更改后不能运行,因此此处要设置好。qtopiaconfig.log和qtopiamake.log是记录编译过程中输出信息的文件,由于编译过程较长,把信息导出方便查看# chmod +x build# ./build由于文件比较大,编译时间大概需要2个多小时,祈祷不要出错,那将是你难以忘怀的经历~~。四、编译完成后,这时,在‘buildarm’目录下会生成‘sdk’和‘image’,‘sdk’是在开发板上开发Qt图形界面软件的API库,另外还有国际化工具等工具软件。而‘image’目录下的文件,就是我们期盼已久的可执行文件。将imgage复制到开发板/home/sxbg/下 把image重命名为qt4.4.3将qt-extended-4.4.3/etc/zoneinfo复制到/usr/share将/4.4.3/arm-none-linux-gnueabi/lib/libstdc++.so.6.0.13重命名libstdc++.so.6为复制到开发板/lib编辑开发板/etc/profile添加环境变量export HOME=/home/sxbg/qt4.4.3export QPEDIR=/home/sxbg/qt4.4.3export PATH=$QPEDIR/bin:$PATHexport LD_LIBRARY_PATH=$QPEDIR/lib:/lib:$LD_LIBRARY_PATHexport QWS_SIZE=320x240export QWS_DISPLAY="LinuxFB:/dev/fb0"export QWS_DISPLAY="LinuxFB:mmWidth130:mmHeight100:0"export QWS_KEYBOARD="TTY:/dev/tty1"export QWS_MOUSE_PROTO="TSLIB:/dev/event0"export QT_PLUGIN_PATH=$QPEDIR/plugins/export QT_QWS_FONTDIR=$QPEDIR/lib/fonts/五、测试运行#cd /home/sxbg/qt4.4.3/bin#./qpeqt界面终于出来了,感谢网上对错误提供解决方案的人,至此Qt移植告一段落。