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

移动开发
本文介绍的是基于Linux 安装与建立 Qt 桌面开发运行环境,详细内容,请看本文介绍。

基于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 <qapplication.h> 
  2. #include <qlabel.h> 
  3. int main(int argc, char **argv)  
  4. {  
  5.          QApplication app (argc, argv);  
  6.          QLabel *hello = new QLabel("<h2><fontcolorfontcolor=blue>Hello<i>Qt/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 桌面开发运行环境的内容介绍完了希望本文对你会有帮助!

责任编辑:zhaolei 来源: 互联网
相关推荐

2011-07-04 14:11:43

QT 桌面 Embedded

2011-07-04 15:48:57

Qt 桌面

2012-01-04 00:14:10

ibmdw

2011-06-20 09:06:05

Qt Qtopia

2009-12-09 09:47:05

ibmdwRational

2011-06-13 15:33:24

Qt Qt 4.5

2009-07-03 12:59:40

Servlet配置

2009-06-22 11:13:00

linuxJava运行环境

2011-06-23 16:24:21

Qt Embedded 交叉编译

2010-02-26 10:17:15

Linux uClin

2011-06-28 10:20:19

Ubuntu Qt Designer

2011-06-13 13:06:48

Gtk Qt

2011-06-14 09:04:52

Qt 环境变量

2011-07-01 13:15:50

Ubuntu QT Eembedded

2011-06-17 08:59:27

QT Embedded Arm

2011-03-18 20:13:01

QtUbuntu

2011-06-13 13:35:06

Qt Embedded QT

2013-02-25 17:33:07

Linux桌面

2010-02-03 15:35:16

Linux WAS

2022-02-09 15:44:20

RocketMQLinux系统
点赞
收藏

51CTO技术栈公众号