qtopia for arm and x86 编译过程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
qtopia for arm and x86 编译过程系统是完全安装RedHat9.0,板子是远峰的2410II
交叉编译所用到的文件:
qt-embedded-2.3.10-free.tar.gz
qt-x11-2.3.2.tar.gz
qtopia-free-source-2.1.1.tar.gz
tmake-1.13.tar.gz
e2fsprogs-1.35.tar.gz
qtopia for x86的编译步骤:
tar xfz qt-embedded-2.3.7.tar.gz
export QTEDIR=$PWD
tar xfz qt-x11-2.3.2.tar.gz
export QT2DIR=$PWD
tar xfz qtopia-free-1.7.0.tar.gz
export QPEDIR=$PWD
tar xfz tmake-1.13.tar.gz
export TMAKEDIR=$PWD
export TMAKEPATH=$PWD/tmake-1.13/lib/qws/linux-x86-g++ export PATH=$TMAKEDIR/bin:$PATH
cd qt-2.3.2
export QTDIR=$QT2DIR
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
./configure -no-xft
make
make -C tools/qvfb
cd ..
cd qt-2.3.7
export QTDIR=$PWD
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
cp $QT2DIR/bin/uic bin
cp $QT2DIR/tools/qvfb/qvfb bin
cp $QPEDIR/src/qt/qconfig-qpe.h src/tools/
./configure -qconfig qpe -qvfb -thread -system-jpeg -gif -depths 4,8,16,32 make
cd ..
tar xzf e2fsprogs-1.35.tar.gz
cd e2fsprogs-1.35
./configure -enable-elf-shlibs
make install
注:这是编译x86的libuuid库
cd ..
cd qtopia-free-1.7.0
export PATH=$QPEDIR/bin:$PATH
export LD_LIBRARY_PATH=$QPEDIR/lib:$LD_LIBRARY_PATH cd src
./configure
make
以上步骤按照qtopia的doc里步骤就可以了。
安装结束后,可以打开一个qvfb,看看qpe的效果。
qtopia for arm的编译步骤:
tar xfz qt-embedded-2.3.7.tar.gz
export QTEDIR=$PWD
tar xfz qt-x11-2.3.2.tar.gz
export QT2DIR=$PWD
tar xfz qtopia-free1.7.0.tar.gz
export QPEDIR=$PWD
tar xfz tmake-1.13.tar.gz
export TMAKEDIR=$PWD
export TMAKEPATH=$PWD/tmake-1.13/lib/qws/linux-arm-g++ export PATH=$TMAKEDIR/bin:$PATH
cd qt-2.3.2
export QTDIR=$QT2DIR
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
./configure -no-xft
make
make -C tools/qvfb
cd ..
cd qt-2.3.7
export QTDIR=$PWD
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
cp $QT2DIR/bin/uic bin
cp $QT2DIR/tools/qvfb/qvfb bin
cp $QPEDIR/src/qt/qconfig-qpe.h src/tools/
./configure -xplatform linux-arm-g++ -qconfig qpe -qvfb -thread -system-jpeg -gif -depths 4,8,16,32
make
cd ..
注:这里交叉编译arm版本的Qt/E,需要arm版本的libjpeg.so.62
tar xzf e2fsprogs-1.35.tar.gz
cd e2fsprogs-1.35
./configure -host=arm-linux -with-cc=arm-linux-gcc -with-linker=arm-linux-ld
-enable-elf-shlibs -prefix=/usr/local/arm/2.95.3/arm-linux
make install
//这步安装到/usr/local/arm/2.95.3/arm-linux/lib上的libuuid.so.1.2版本不对,要执行
cp lib/libuuid.so.1.2 ../arm-linux/lib
cd ..
cd qtopia-free-1.7.0
export PATH=$QPEDIR/bin:$PATH
export LD_LIBRARY_PATH=$QPEDIR/lib:$LD_LIBRARY_PATH
cd src
./configure -xplatform linux-arm-g++
make
注:这里需要libstdc++.so和libgcc_s.so库
以上都是我机器上的安装步骤,每个机器可能出现不同情况,根据错误信息,自己试着改改,应该可以改出来。
我这里用的cross 编译器版本是2.95.3。
注意两个环境在两个不同文件夹下建立,可以在/opt/建立两个文件夹,qtopia-for-x86 和qtopia-for-arm,为了避免每次进入某一编译环境都要敲一大堆命令的麻烦,可以在这两个文件夹里分别建立两个脚本文件,每次要用那个环境,直接运行那个脚本文件,一个命令搞定。