安装,编译EmbedSky提供的qt-4.5的源码

来源:互联网 发布:电脑怎么注册开淘宝店 编辑:程序博客网 时间:2024/05/21 13:55

1、把EmbedSky提供的qt-4.5的源码解压到一个文件夹里面

"tar xvfj qt-embedded-linux-opensource-src-4.5.0_20100601.tar.bz2 -C /work"

由于EmbedSky归档压缩包里面有文件夹"opt/EmbedSky/",所以qt-4.5的源码的实际路径是"/work/opt/EmbedSky";

我不喜欢这样的路径,所以我把qt-4.5的源码移动到/work目录下,使用命令"sudo mv -f /work/opt/EmbedSky/qt-4.5 /work",并删除EmbedSky留下的空文件夹,"sudo rm -r /work/opt/"。

2、进入qt-4.5源码的文件夹里面,"cd /work/qt-4.5",修改里面的shell文件'arm_qt4.5_build':

修改第21行 '-perfix /opt/EmbedSky/qt-4.5/__install/arm',修改成自己喜欢的路径,例如我现在源码的位置是'/work/qt-4.5',想把编译出来的文件放在qt-4.5的文件夹里面,就修改成'-perfix /work/qt-4.5/__install/arm'。

3、由于Ubuntu中gmake就是make,所以把29行跟37行的'gmake'改成'make',或者在pc机的终端中输入命令"sudo ln -s /usr/bin/make /usr/bin/gmake",给make创建一个符号链接gmake

4、执行shell脚本文件,“./arm_qt4.5_build”,等待编译过程的结束,根据不同的编译环境,所需要的时间各有不同,我的编译时间是1个小时左右。

 

除了使用EmbedSky提供的shell脚本来编译qt-4.5,也可以手动来编译,这个可以参考一下脚本文件的内容自行领悟。

下面我贴出脚本文件的内容:

 

#!/bin/sh

if [ -d build/build_arm ] ; then
    echo "the build_arm directory is already !"
else
    mkdir -p build/build_arm
fi

if [ -d __install/arm ] ; then
    echo "the __install/arm directory is already !"
else
    mkdir -p __install/arm
fi

cd build/build_arm/

if [ -f Makefile ] ; then
    echo "the Makefile is already !"
else
    echo "Config Qt4.5 now, please wait ..."
    echo yes | ../../qt-embedded-linux-opensource-src-4.5.0/configure -prefix /work/tools/qt-4.5/__install/arm/ -release -shared -fast -no-largefile -qt-sql-sqlite -no-qt3support -no-xmlpatterns -no-mmx -no-3dnow -no-sse -no-sse2 -no-svg -no-webkit -qt-zlib -qt-gif -qt-libtiff -qt-libpng -qt-libjpeg -make libs -nomake examples -nomake docs -nomake demo -no-nis -no-cups -no-iconv -no-dbus -no-openssl -xplatform qws/linux-arm-g++ -embedded arm -little-endian -qt-freetype -depths 16 -qt-gfx-linuxfb -qt-gfx-transformed -qt-gfx-multiscreen -no-gfx-vnc -no-gfx-qvfb -qt-kbd-usb -no-kbd-qvfb -no-glib -armfpa -no-mouse-qvfb -qt-mouse-linuxtp -qt-mouse-tslib -I/tslib-1.4/inclued -L/tslib-1.4/lib &&
    echo "Finished config Qt4.5 !"
fi

if [ -f lib/libQtCore.so.4.5.0 ] ; then
    echo "Qt4.5 library build complete !"
else
    echo "Build Qt4.5 library now, please wait ..."
    gmake &&
    echo "Finished build Qt4.5 !"
fi

if [ -f ../../__install/arm/lib/libQtCore.so.4.5.0 ] ; then
    echo "Qt4.5 library install in __install/arm/ !"
else
    echo "Install Qt4.5 library now, please wait ..."
    gmake install &&
    echo "Finished install Qt4.5 !"
fi

cd ../../

 

 

可以看出,开始两段代码是创建文件夹用的,接下来的一大段代码其实是配置qt-4.5的配置,配置的详情可以参考我的另外一篇文章:http://blog.csdn.net/mikit/archive/2010/11/21/6025011.aspx

接着就是开始编译gmake,以及gmake install(在Ubuntu环境下可以把gmake改成make来运行,不然可能会出现错误)!