标题:qt+qtopia交叉编译过程
作者:drbigjump
日期:2006-05-13 18:15
内容:
经过两个星期的工作,qtopia终于在开发本板上跑起来了.在移植的过程中得到了许多人的帮助,特别是版主shiroki,真是大好人,帮我解决了不少问题,在这里表示感谢!
我的板子是mips的,编译器的版本是3.3.6.开始用的是3.4.2,后来在编译qtopia的时候出现了internal complier error,就换了个3.3.6的.软件的版本分别是qt-x11-2.3.2qte-2.3.7 qtopia-1.7.0e2fsprogs-1.35tmake-1.13系统是redhat9 2.4.20
交叉编译过程如下:
tar jxvf e2fsprogs.tar.bz2
tar zxvf tmake-1.13.tar.gz
tar jxvf qte.tar.bz2 (2.3.7)
tar jxvf qtopia.tar.bz2(1.7.0)
tar zxvf qt-x11.tar.gz(2.3.2)
tar zxfv jpegsrc.v6.tar.gz
解压目录名分别命名为qt-x11qtqtopiatmakejpege2fs
交叉编译器的目录:/home/wjj/buildroot/build_mipsel/staging_dir
export CROSSDIR=/home/wjj/buildroot/build_mipsel/staging_dir
###########--------build jpeg lib-------##############
交叉编译jpegsrc,得到libjpeg
./configure --enable-shared
Make 得到libtools程序,然后再
./configure --enable-shared
修改生成的makefile文件
prefix=../qt
CC=mipsel-linux-gcc
AR=mipsel-linux-ar rc
AR2=mipsel-linux-ranlib
cp jconfig.doc jconfig.h
make
make install
向下面的目录中也拷贝一份libjpeg.so
$CROSSDIR/lib
###########--------build uuid lib-------##############
cd e2fsprogs/lib/uuid
./configure
--prefix=$CROSSDIR
--enable-elf-shlibs
--build=i386-linux
--host=mips-linux
--target=mips-linux
--with-cc=mipsel-linux-gcc
--with-linker=mipsel-linux-ld
make
mkdir$CROSSDIR/include/uuid
cp *.h$CROSSDIR/include/uuid
cp libuuid.*$CROSSDIR/lib
###########--------build qt-X11-------##############
cd qt-x11
export QTDIR=$PWD
echo yes | ./configure -static -no-xft -no-opengl -no-sm
make
mkdir ../qt/bin
cp bin/uic../qt/bin/
cd ..
#########---------qt.sh--------###################
建一个脚本文件qt.sh下面是脚本的内容
export QTDIR=$PWD/qt
export QPEDIR=$PWD/qtopia
export TMAKEDIR=$PWD/tmake
export TMAKEPATH=$TMAKEDIR/lib/qws/linux-mips-g++
export PATH=$QTDIR/bin:$QPEDIR/bin:$TMAKEDIR/bin:$PATH
运行脚本:source qt.sh
###########--------build q ..
#1 [lijasmine 05-14 20:19]
e2fsprogs.tar.bz2; tmake-1.13.tar.gz; qte.tar.bz2 (2.3.7);qtopia.tar.bz2(1.7.0) ;qt-x11.tar.gz(2.3.2);jpegsrc.v6.tar.gz请问这些安装包在那里下载的?我在http://www.trolltech.com download
页面没有找到。我正在找这些安装包,交叉编译Qte安装在主机上。目标板时买的里面已经有Qt/e和Qtopia包了。还有我想知道e2fsprogs和jpegsrc这两个的作用?
#2 [octopia 05-15 15:53]
e2fsprogs.tar.bz2还有jpegsrc.v6.tar.gz这两个文件必须有吗,解压之后是做什么用的呢?
#3 [shiroki 05-15 16:51]
e2fsprogs.tar.bz2是libuuid.so的源码
jpegsrc.v6.tar.gz是libjpeg的源码
这两个库是qte依赖的, 所以如果要交叉编译qte必须先有交叉编译好的这两个包
http://doc.trolltech.com/qtopia2.1/html/qtopia-dependencies.html
#4 回 3楼(shiroki) 的帖子 [za5862 09-06 10:54]
你好,麻烦请教一下,我按照上面build jpeg lib的步骤先解压了tar zxfv jpegsrc.v6.tar.gz然后进入jpep-6执行./configure --enable-shared然后make,没有得到libtools程序,继续按步骤编译得不到libjpeg.so ,请教一下