Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > Linux > Build Qtopia for x86
【标  题】:Build Qtopia for x86
【关键字】:Build,Qtopia,for,x86
【来  源】:http://www.cublog.cn/u/23458/showart.php?id=164419

Build Qtopia for x86

Your Ad Here

Build Qtopia for x86

一、相关工具以及软件包:

Ø           Cross-compiler Toolchains              提供arm交叉编译工具

Ø           e2fsprogs-1.35.tar.gz                        用于编译生成libuuid

Ø           tmake-1.11.tar.gz                              生成makefile

Ø           qt-embedded-2.3.7.tar.gz                  Qt/Embedded

Ø           qt-x11-2.3.2.tar.gz                             Qt/X11,提供uicqvfb

Ø           qtopia-free-1.7.0.tar.gz                      Qtopia

将这些工具和软件包保存到/qte_x86/目录,并解压缩。注意Toolchains已保存到/opt/xscalev1/bin

 

二、安装tmake

       tmake用于交叉编译生成qt应用程序的makefile 也可用于生成qt的本地makefile,区别在于设置TMAKEPATH路径的不同,一个用于arm,一个用于x86

       注意:tmake机器上本来就有,但是需要1.11以上版本,可用tmake –v查看版本信息。

设置tmake环境变量:

# export PATH=/qte_arm/tmake-1.11/bin:$PATH

# export TMAKEDIR=/qte_arm/tmake-1.11

# export TMAKEPATH=/qte_arm/tmake-1.11/lib/qws/linux-arm-g++

       实际操作成功后才发现TMAKEPATH中用的是lib/qws/linux-arm-g++,不知道为什么能成功。按理说应该使用lib/qws/linux-x86-g++

 

三、安装e2fsprogs

# cd e2fsprogs

# ./configure  –enable-elf-shlibs

# make

# make install lib/uuid # cd lib/uuid    # make install

       其中lib目录下的libuuid.so.1.2libuuid.so.1libuuid.so即是我们要编译的库,必须检查是否出现以及相应格式,否则说明编译不成功。

e2fsprogs-1.35/lib/目录下uuid的文件夹复制到qtopia/include下。

e2fsprogs-1.35/lib/中的libuuid.a复制到/qtopia/lib下。

否则会出现找不到uuid.hcannot find -lqtopia的问题,这是因为RedHat 9中缺少uuid.h文件。

//有人说在装e2fsprogs之前需要设置链接器路径(不用):

// export LD_LIBRARY_PATH=$QTDIR/lib:$QPEDIR/lib:$LD_LIBRARY_PATH

 

四、安装Qt/Embedded

Qt/E已经解压到/qte_x86/qte-2.3.7Qtopia解压到/qte_x86/qtopia-1.7.0

# cd /qte_x86/qte-2.3.7

# export QPEDIR=../qtopia-1.7.0

# export QTDIR=$PWD

# export PATH=$PWD/bin:$PATH

# export LD_LIBRARY_PATH=$PWD/lib:$LD_LIBRARY_PATH

 

# cp $QPEDIR/src/qt/qconfig-qpe.h  src/tools/

# ./configure –qconfig qpe –qvfb –depths 4,8,16,32 -shared –no-xft

# make 或者# make sub-src

//注意必须采用选项-depths 4,8,16,32,因为PC的显示器属性往往调为32位色彩象素深度,若只选16,则在使用qvfb仿真时会发生问题,可能需要调节PC显示属性。

 

五、安装Qt/X11

       编译qt-x11-2.3.2是为了得到uicqvfbuic在编译qtopia时要用到,因此要用gcc/g++编译。Qvfb则用于在没有帧缓冲结构的x86处理器系统和X窗口环境下,模拟出虚拟的帧缓冲,以便用于在PC上进行qtopia应用开发时的仿真。

       需要注意的是选择安装的Qt for X11的版本必须比Qt/Embedded的版本旧。

       # cd  /qte_x86/qt-2.3.2

       # export QTDIR=$PWD

       # export PATH=$PWD/bin:$PATH

       # export LD_LIBRARY_PATH=$PWD/lib:$LD_LIBRARY_PATH

       # ./configure –no-xft

       # make

       # make –C tools/qvfb 或者# cd tools/qvfb # make

      

       # cp tools/qvfb/qvfb  bin   //将上一步生成的可执行文件qvfb拷到bin目录下。

       # cp bin/uic $QTEDIR/bin

 

六、Build Qtopia

# cp  /qte_x86/e2fsprogs/lib/libuuid.a  /qte_x86/qtopia-1.7.0/lib

# cp –av /qte_x86/e2fsprogs/lib/uuid  /qte_x86/qtopia-1.7.0/include

       # export QTDIR=$QTEDIR

       # export PATH=$PWD/bin:$PATH

       # export LD_LIBRARY_PATH=$PWD/lib:$LD_LIBRARY_PATH

      

       # cd src

       # ../configure

       # make

       注意,这里configure后面不带参数时,默认选项为configure –platform linux-generic-g++,不能写成configure –platform linux-x86-g++,否则编译时出错。不知道为什么?

 

[参考资料]

     Qtopia软件包的相关文档;

     LinuxQt/EmbeddedQt/X11Qtopia 安装方法,http://blog.xjtu.edu.cn/user3/6415/archives/2006/68008.shtml

 

[声明]本站文章除特别注明外,均为作者原创,如需转载请注明作者与出处。

[提示]您可以通过这个链接引用这篇文章:http://blog.chinaunix.net/u/23458/showart.php?id=164419

Build Qtopia for arm:【上一篇】
Emacs使用ecb:【下一篇】
【相关文章】
  • Build Qtopia for arm
  • Qtopia开发及应用平台的搭建
  • Oracle 10g 在 Solaris 10 for x86 下的安装流程
  • strace - A very powerful troubleshooting tool for
  • Nokia官方培训(Symbian 4300)笔记 -- 第一篇 Forum Nokia
  • FortiNet 资源链接列表
  • Designing and Implement Lookup Control for Windows Forms
  • java.io.UTFDataFormatException异常处理
  • Office XP外观感觉 for Java Swing
  • "form Inheritence",it seems that it's intentionall MS BUG
  • 【随机文章】
  • asp.net 2.0 Profile 的一些注意事项(序列化)
  • Windows上获得IP地址的四种方法
  • 手机号码归属地Access数据库
  • 用VB 5.0从Recordset中打印列表
  • 蓝点:一家本土Linux企业的跌宕浮沉(中)
  • see This 破解实战!
  • 标题测试
  • vim快乐入门
  • Visual C++ 如何:在各种字符串类型之间进行转换
  • Maven入门--较复杂的实例
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.