电动车的接线图:基于Linux 安装与建立 Qt 桌面开发运行环境

来源:百度文库 编辑:偶看新闻 时间:2024/04/30 20:50:56

基于Linux 安装与建立 Qt 桌面开发运行环境


  本文标签:Qt 桌面 qvfb 

  基于Linux 安装与建立 Qt 桌面开发运行环境是本文呢文要介绍的内容,本人认为虚拟机是最好的朋友,先来看本文介绍  。

  1.下载Qt

  在TrollTech网站http://www.trolltech.com/developer/ 上搜索下载Qt的相关包,包括

  1. qt-embedded-free-3.3.4.tar.gz  
  2. qt-x11-opensource-src-4.2.3.tar.gz 

  tmake-1.8.tar.gz    #可以不要,因为有现在这些高版本的qt-embedded,qt-x11,qtopia里就有qmake

  这些都是最新的Qt版本,编译过程好像跟查资料时的老版本的步骤有很大的不同,比如新版本使用qmake而不像以前使用tmake,还有configure脚本文件配置时的参数有许多变化,编译时没有什么资料可以查,除了trolltech本身的一些文档,剩下的只好自己摸索了  。

  2.安装与编译

  假设我把这些包都放在 /root/qt 下

  解压qt-x11-opensource-src-4.2.3.tar.gz

  1. tar vxzf qt-x11-opensource-src-4.2.3.tar.gz  
  2. export QT2DIR=$PWD/qt-x11-opensource-src-4.2.3     #设置一下环境变量 

  解压qt-embedded-free-3.3.4.tar.gz

  1. tar vxzf qt-embedded-free-3.3.4.tar.gz  
  2. export QTEDIR=$PWD/qt-embedded-free-3.3.4 

  解压tmake-1.8.tar.gz           #后来发觉一开始 tmake是没用的因为 2.0以上大版本有了qmake,不过开发的时候可以选择用的,比较方便  。

  1. export TMAKEDIR=$PWD/tmake-1.8 

  然后就是编译了  。

  开始发现老是要设置环境变量,所以我专门各编辑一个脚本文件对 qt-x11-opensource-src-4.2.3和 qt-embedded-free-3.3.4进行编译,分别放在各自的目录中  。
编译 qt-x11-opensource-src-4.2.3 时脚本为:

  1. #!/bin/sh  
  2. export QT2DIR=/root/qt/qt-x11-opensource-src-4.2.3  
  3. export QTEDIR=/root/qt/qt-embedded-free-3.3.4  
  4. export QTDIR=$QT2DIR  
  5. export PATH=$QTDIR/bin:$PATH  
  6. export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH  
  7. ./configure  -prefix-install -opengl      

  其实这里应该还可以设置更多多的选项,比如去掉一些支持

  可以缩短编译时间,因为这个工程编译完要用几个小时啊!

  因为我需要的opengl的支持,所以选择了这个选项  。

  其他的可以通过./configure  --help 命令研究一下  。

  1. make 

  然后就可以干其他的事情了,编译时超痛苦,那个多文件阿,用了一上午才搞定,所以这时你可以尽情去玩一下了  。

  编译好之后还要去qt-x11-opensource-src-4.2.3/tools/qvfb编译 qvfb工具(这个工具编译qt-embedded有用),make一下就可以了  。

  然后就编译 qt-embedded-free-3.3.4,下面是的脚本:

  1. #!/bin/sh  
  2. export QT2DIR=/root/qt-x11-opensource-src-4.2.3  
  3. export QTEDIR=/root/qt-embedded-free-3.3.4  
  4. export QTDIR=$QTEDIR  
  5. export PATH=$QTDIR/bin:$PATH  
  6. export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH  
  7. cp $QT2DIR/bin/uic $QTEDIR/bin/                                    #下面这两个工具编译时要使用  
  8. cp $QT2DIR/bin/qvfb $QTEDIR/bin/    
  9. ./configure   -qconfig qpe -qvfb -depths 4,8,16,32  
  10. make 

  又是好长一段编译时间,大概一个小时左右  。

  3.在virtual framebuffer里运行程序

  编译好后就可以尝试编译 运行examples/ 的例程了,但是编译这些例子的时候有个很奇怪的错误

  1. Some of the required modules (large-config) are not available 

  网上查了一下,幸亏查到了仅有一个提问,而且有人决绝了, 说要修改每个例子下的.pro文件,把 requires = large-config 这一行注释掉,但这一行原来真正有什么用,去掉后会有什么影响,我不得而知,不过编译后还是可以在virtual framebuffer上运行的  。

  编译好例子后就可以运行了,一开始运行例子的时候总会有一个错误:/usr/lib/qt-3.3/lib/fonts/fontdir  没找到什么的,我就奇怪了,我的qt并没有安装在这个目录的(按照上面的脚本文件),查看一下环境变量,居然有一个QTDIR非临时变量(在多个shell中都会显示的,应该在配置文件写死的)指向了这个目录,再进这个目录查看一下文件的日期,都是很久之前的,绝不是刚刚编译的,才知道这个是操作系统自带的qt  。于是每次运行时qt程序时需要用export把QTDIR改掉,改成 $QTEDIR  同时也把 $QTEDIR/bin 添加到 PATH 中,因为 要用这个目录下的qvfb程序是 qt程序运行在virtual framebuffer上,运行时执行

  1. qvfb -width 640 -height 480 &  
  2. sleep 10                   #不知道这个有什么用?不过好像可以使qvfb在后台运行  
  3. ./launcher -qws   #launcher是examples的一个例子 

  如果成功的话qt程序就会运行在qvfb的界面里  。

  4.编写自己的qt程序

  下面可以自己编写自己的程序了  。

  先设置一下环境变量,我这个系统比较郁闷,有老的qt,所以好把QTDIR设置成新编译都目录,覆盖原来的,这个很重要,否则无法通过编译,这个弄了我一个晚上才发现  。

  首先修改环境变量

  1. export QTDIR=/root/qt-embedded-free-3.3.4                  #把老的qt覆盖  
  2. export PATH=/root/qt-embedded-free-3.3.4/bin:$PATH   #要使用qmake程序 

  我编写了以下代码,hello.cpp,并把这个文件保存在名为hello的目录下

  1. #include ation.h> 
  2. #include  
  3. int main(int argc, char **argv)  
  4. {  
  5.          QApplication app (argc, argv);  
  6.          QLabel *hello = new QLabel("

    HelloQt/Embedded!i> font> h2>", 0);  

  7.          app.setMainWidget(hello);  
  8.          hello->show();  
  9.          return app.exec();  

  进入hello目录,生成.pro文件

  1. qmake  -project 

  也可以用tmake-1.8/bin下的progen工具生成.pro文件,tmake其中的一个使用就是这里了,不过要把tmake-1.8/bin的完整路径加入到环境变量PATH中

  修改hello.pro文件为

  1. TEMPLATE        = app 
  2. TARGET          = hello 
  3. CONFIG          = qt warn_on release  
  4. DEPENDPATH      = /root/qt-embedded-free-3.3.4/include  
  5. HEADERS                =   
  6. SOURCES         = hello.cpp  
  7. INTERFACES      = 

  生成Makefile

  1. qmake -o Makefile hello.pro  
  2. 或者用  
  3. tmake -o Makefile hello.pro 

  然后

  1. make 

  就可以了

  1. qvfb -width 320 -height 240 &  
  2. sleep 10  
  3. ./hello -qws 

  大功告成,你可以欣赏自己的Qt程序了  。

  小结:关于基于Linux 安装与建立 Qt 桌面开发运行环境的内容介绍完了希望本文对你会有帮助