## 4.3 Eclipse
Eclipse 和 Qt 的结合起来使用,也是很常见的形式,Nokia 专门为此开发了插件。 Eclipse 的官方网站是:http://www.eclipse.org/,在上面可以很容易的下载到各种你需 要的版本,目前的最高版本为 3.5 Galileo。
### 4.3.1 简介
Eclipse 是著名的跨平台的开源的集成开发环境( IDE)。Eclipse 的本身只是一个框架平台,最初主要用来 Java 语言开发,但是众多插件的支持使得 Eclipse 拥有其他功能相 对固定的 IDE 软件很难具有的灵活性。许多软件开发商以 Eclipse 为框架开发自己的 IDE,比如 Nokia 的 Carbide.c++(后面我们还会讲到它),现在它已经发展成为支持其他多种计 算机语言如 C++和 Python 的优秀 IDE。
Eclipse 启动后的画面如图 4-2 所示。
![](https://box.kancloud.cn/2016-01-22_56a1a14519506.png)
### 4.3.2 主要特点
Eclipse 的主要特点如下:
+ 良好的扩展性
图 4-2 eclipse 启动画面
这要归功于 Eclipse 首创的插件机制,Eclipse 的设计思想是:一切皆插件。Eclipse核心很小,其它所有功能都以插件的形式附加于 Eclipse 核心之上。Eclipse 基本内核包 括:图形 API (SWT/Jface), Java 开发环境插件(JDT),C/C++环境插件插件(CDT), 开发框架环境(PDE)等。
+ 强大的支持
Eclipse 最初是由 IBM 公司开发的替代商业软件 Visual Age for Java 的下一代 IDE 开 发环境,2001 年 11 月贡献给开源社区,现在它由非营利软件供应商联盟 Eclipse 基金会(Eclipse Foundation)管理。众多的业界巨头对 Eclipse 非常看好,并且持续投入巨资以支持研发和管理。
除了商业公司的青睐,Eclipse 还得到来自世界各地的爱好者组成的众多开源社区的 支持,几乎每天都有新的插件和功能产生,而 Eclipse 基金会的管理也非常有序,基于 Eclipse 的成功应用屡见不鲜,这些都使得 Eclipse 成为最受欢迎的优秀 IDE 之一。
+ Qt 工程可以跨平台使用
Eclipse 虽然不能解析 qmake 文件,但是使用它建立的同一个工程可以在 Windows、Linux 和 Mac OS X 使用。这就大大简化了移植应用程序的过程,与 Qt 的理念不谋而合。
+ 代码提示功能突出
与 Qdevelop 等其他 IDE 比较起来,Eclipse 没有使用 CTags 作为代码提示工具,因而在 进行代码提示的时候速度更快,CPU 资源占用更少.并且 Eclipse 中的提示内容更加的准确和 完整。
Eclipse 也有一些不足之处,主要是两点。一是耗费系统资源较多,这与它的机制和 Java 的运行效率有关;二是对 Qt 的支持还不是很完善,这与它的设计理念有关,它 的初衷 只是提供一个可扩展的框架,许多的功能还是要其他厂商或开发者自己完善。
具体使用时的感觉就是用 Eclipse 开发程序,机器要有较好的配置,内存一定要多一 些,否则程序的运行速度将比较缓慢,开发效率不高。
总的来说,Eclipse 是一个很好的 Qt IDE,它也是 qtsoftware 官方网站上推荐的 IDE 之一。良好的扩展性以及众多业界巨头的和开源社区的支持,都使 Eclipse 值得信赖和推 荐。
### 4.3.3 安装与配置
Eclipse 本身的安装比较容易,但与 Qt 结合起来就需要一定的步骤了,尤其是在 Windows 平台上面。一般很少有人在 Linux 平台上使用 Eclipse 开发 Qt 程序,这主要是由 于如果采用编译安装的方法的话,有太多的依赖问题需要解决,而如果使用发行版自带的 Eclipse 的话,又存在与 Qt 版本的对应问题。在 Mac OS X 上同样存在类似的问题,开发者 一般使用 Xcode。所以使用 Eclipse 一般是在 Windows 这个单一平台上,并且是选择 Windows XP 以上的版本。我们就以 Windows XP SP2 中文版和最新的 Qt 4.5.2 为例,向大 家介绍如何使用 Eclipse 开发 Qt 应用程序。
首先看看需要准备那些软件包,表 4-1 描述了需要安装的软件包和下载地址。
表 4-1 需要的软件包
| 软件包 | 说明 | 下载地址 |
| --- | --- | --- |
| JRE | Java 运行环境 | [http://java.sun.com/javase/downloads/](http://java.sun.com/javase/downloads/) |
| MinGW | C++编译器和调试器 | [http://sourceforge.net/](http://sourceforge.net/) |
| Qt OpenSource | Qt 库 | [http://www.qtsoftware.com/downloads-cn](http://www.qtsoftware.com/downloads-cn) |
| Eclipse | 支持 C++开发的版本 | [http://www.eclipse.org/downloads](http://www.eclipse.org/downloads) |
| Qt Eclipse Integration for C++ | Qt 与 Eclipse 的集成工具 | [http://www.qtsoftware.com/developer/eclipse-integration](http://www.qtsoftware.com/developer/eclipse-integration) |
安装过程如下:
第 1 步,确定安装顺序
由于 Eclipse 需要 JRE 才能运行,而 Qt Open Source 也依赖于 MinGW,所以我们按照下面的顺序安装软件包:JRE、MinGW、Qt Open Source 、Eclipse、Qt Eclipse Integration for C++。
第 2 步,安装 JRE
这里需要 JRE1.5 以上,我的选择是直接下载安装 JDK,其中包含了 JRE。安装方法可 以参考第 2 章,一路点击【Next】按钮,只是在设置安装路径时,不要选择带有空格和特 殊字符的就好。
第 3 步,安装 MinGW
MinGW 的安装也与第二章的方法相同,需要安装 DevCpp,或者选择在下面安装 Qt 时, 自动由 Qt 安装程序从网络上下载并安装,而不要自己下载安装最新的 5.1.4 版 MinGW。
第 4 步,安装 Qt 库
Qt Open Source 版可以选用 SDK,这样就不用先安装 MinGW 了。也可以选择框架,如 图 4-3 所示,在 qtsoftware 网站上,选择“下载用于 Windows 的 qt 库 4.5(60 Mb)”。 下载后的安装方法请看第 2 章。
![](https://box.kancloud.cn/2016-01-22_56a1a14549941.png)
图 4-3 下载 Qt 库
第 5 步,安装 Eclipse
去网站上下载 Eclipse,由于 Eclipse 项目众多,它的网站上下载列表项变得很长,让人困惑,如图 4-4 所示,我们要下载的包是那个”Ecilpse IDE for C/C++ Developers(79 Mb)”。你下载到的文件名字类似于 eclipse-cpp-galileo-win32.zip,是一个压缩包。解 开它后,只要你安装过了 JRE,就可以运行了。
![](https://box.kancloud.cn/2016-01-22_56a1a1456c7e1.png)
图 4-4 下载 ecilpse&CDT
接下来把它解压缩到你的目录中,为方便起见,可以把它解到某个盘符的根目录下, 比如 C 盘,因为它会创建完整的路径,如图 4-5 所示。
![](https://box.kancloud.cn/2016-01-22_56a1a14597686.png)
图 4-5 解压缩到根目录
这样解压缩后,我的情形是在 C 盘根目录下建立了一个 C:\eclipse 目录,如图 4-6 所 示,里面展开了所有内容,只要你前面安装了 JRE,这时候双击 eclipse.exe,就可以运行 了。
![](https://box.kancloud.cn/2016-01-22_56a1a145afb4e.png)
图 4-6 安装 eclipse 完毕
第 6 步,安装 Qt Eclipse Integration for C++
先到 Qt Software 网站上下载安装程序,情形如图 4-7 所示,我们需要下载 Windows 版的。
![](https://box.kancloud.cn/2016-01-22_56a1a145ced7c.png)
图 4-7 下载 Qt Eclipse Integration for C++
然后开始安装,中间过程基本都是一路选择默认。需要注意的是,选择 Eclipse 时需 要选择它的根路径,而 MinGW 则需要指定它的 bin 目录。如果你是采用 SDK 安装的 Qt 库, 那么你需要如图 4-8 所示进行设置。
![](https://box.kancloud.cn/2016-01-22_56a1a145e68b7.png)
图 4-8 设置 eclipse 和 MinGW 的路径(SDK 方式安装 Qt 库)
如果采用框架方式安装,则你的设置应该如图 4-9 所示。
![](https://box.kancloud.cn/2016-01-22_56a1a14604eef.png)
图 4-9 设置 eclipse 和 MinGW 的路径(框架方式安装 Qt 库)
接下来,就是一路按下【Next】按钮直至安装完成。 至此,Qt 和 Eclipse 的安装就完成了。
### 4.3.4 使用要领
1\.软件的启动
你可以选择如下方式启动 Eclipse,依次点击菜单【开始】->【程序】->【qt eclipse integration】->【开始】,Eclipse 在弹出启动画面后,将进入如图 4-10 所示的主界面。
![](https://box.kancloud.cn/2016-01-22_56a1a14616d10.png)
图 4-10 Ecilpse 成功启动
2\.设置默认工作目录
在第一次启动 Eclipse 时,软件会要求设置默认工作路径,如图 4-11 所示在其中填入 你的路径即可。
![](https://box.kancloud.cn/2016-01-22_56a1a146519d8.png)
图 4-11 设置默认工作目录
小贴士:设置完默认工作目录之后,系统就不会再提出此要求了。但日后要想更改的话, 却找不到设置这一项的地方。因为 Eclipse 在第一次运行时才会去 plugins 目搜索插件, 之后就不再找了。而 Eclipse 不知道是出于什么原因,没有提供修改的方法。经过摸索, 解决方法有两种。
一种就是删除 Eclipse 的 configuration 目录,让 Eclipse 以为还是第一次启动,它 就会去搜索 plugins 找 Qt 插件了。
第二种就是加参数运行 Eclipse。在命令窗口下执行 eclipse.exe -clean 命令,Eclipse 就会清除配置文件然后重新搜索插件配置。
3\.如何安装调试库
如果采用 SDK 安装 Qt 库,就已经安装了 debug 和 release 的动态库;如果采用框架方 式安装 Qt 库,默认是不安装调试库的,如需运行 Debug 模式,可以进入到 Qt 的 bin 目录 里面,输入如下命令即可编译调试库。
```
qtvars.bat compile_debug
```
或者依次点击【开始】->【程序】->【Qt by Nokia v4.5.2(OpenSource)】->【Qt4.5.2(Build Debug Libraries)】,这需要几个小时的编译时间和大约 10 个 G 的硬盘空 间,要有耐心,还要有足够的硬盘容量。
4\.如何建立 Qt 工程
在主菜单上如图 4-12 所示依次点击【File】->【New】,就会出现多种可供选择的 Qt 工程类型,根据你的想法进行选择即可 。
![](https://box.kancloud.cn/2016-01-22_56a1a14664ab6.png)
图 4-12 新建 Qt 工程
比如选择 Qt Gui Project,然后在出现的界面上放置一些常见控件,如图 4-13 所示, Qt Designer 已经无缝的集成到了 Eclipse 中。
![](https://box.kancloud.cn/2016-01-22_56a1a146794a3.png)
图 4-13 Eclipse 中集成 Qt Designer 4.4Visual Studio 2008(含 Express 版)与 Qt 4.5(含 4.5 的所有版本)
这里我们以 MS Visual Studio 2008 版为例,说明与 Qt 4.5 的集成使用方法,该方法 也适用于 Express 系列。VS 2005 与 Qt 4.5 的集成配置方法与此类似,只是在安装 VS 2005 时,需要打上 SP1 的补丁。我们更为推荐使用 VS 2008。据 Qt Software 透露的消息,自 Qt 4.6 开始,Qt 将提供针对 MS Visual Studio 系列 的直接安装版本,这一举措将大大简化安装配置的过程。但是,该版本内置的功能不一定能 够满足开发者的需求,所以本文介绍的编译安装方法是具有普遍意义的,希望大家能够用心 掌握。
下面以 Windows XP SP2 中文版为例,介绍如何把这两者集成使用。
第 1 步,安装 MS Visual Studio 2008
这一步里面,需要注意的有两点。一是可以选择英文版或者是中文版,在整个的安装 过程中并没有大的差异。使用中文版时,无论是 VS 2008 还是 2005 都需要安装 VS 的 SP1 包,否则会出现错误,导致安装失败。笔者个人喜欢使用英文版;二是安装时,最好选择完 全安装的方式,当然不会用到的语言和模块比如 VB 和 C#等就可以不选,VC 的所有组件要 全部安装上去。在网上好多朋友安装时出现了一些问题,很多都与 VS 安装时没有安装完全 有关。
第 2 步,安装 Qt 4.5 的源码
在官方网站的下载地址上下载 Qt 的 SDK,采用默认设置安装(不熟悉的朋友可以参阅第 2 章),注意版本是随时可能更新的,官网地址是: http://www.qtsoftware.com/downloads。我们这里选择 LGPL/Free Downloads,然后选择 qt-win-opensource-src-4.5.0.zip 解压,假定解压到 E:\qt-win-opensource-src-4.5.0 ,注意解压路径不要包含空格、 中文名称以及其它特殊字符,解压后目录层次如图 4-14 所示。
![](https://box.kancloud.cn/2016-01-22_56a1a14693c93.png)
图 4-14 解压后目录层次
第 3 步,配置环境变量 主要是设置两个环境变量,使用命令行方法如下:
```
set QTDIR=E:\qt-win-opensource-src-4.5.0
set path=%path%;%QTDIR%\bin
```
使用图形化设置的方法如下:
依次点击【我的电脑】->【属性】->【高级】->【环境变量】,弹出【环境变量】设 置对话框,如图 4-15 所示。
然后点击【新建】按钮,弹出【新建用户变量】对话框,在其中的输入框中填写: “变量名” --- QTDIR “变量值” --- E:\qt-win-opensource-src-4.5.0
![](https://box.kancloud.cn/2016-01-22_56a1a146a9308.png)
图 4-15 添加 Qt 的用户变量
与上面的步骤相似,修改 PATH 环境变量方法如下:
如图 4-16 所示,选择【PATH】变量,然后点击【编辑】按钮,在【变量值】的最后面 输入:
```
;%QTDIR%\bin
```
注意最前面有一个分号(不是中文的分号,切记)。
![](https://box.kancloud.cn/2016-01-22_56a1a146d55ce.png)
图 4-16 编辑 PATH 变量
第 4 步,使用 VS 编译 Qt 源码
最好先为 Qt 的 SDK 准备一个目录,如我的是:E:\Qt\4.5SDK。注意将磁盘格式设置为 FAT 32 格式,NTFS 格式可能会对安装过程有影响。
然后就开始编译 Qt 4.5 的源码。
通过【开始】菜单 ->【Microsoft Visual Studio 2008】->【Visual Studio Tools】, 运行 VS 2008 命令行提示,中间过程如下:
```
C:\Program Files\Microsoft Visual Studio 9.0\VC> cd c:\Program Files\Microsoft Visual Studio 8\Common7\Tools>
C:\Program Files\Microsoft Visual Studio 8\Common7\Tools> vsvars32.bat
C:\Program Files\Microsoft Visual Studio 8\Common7\Tools> e:
E:\> cd e:\qt\4.5sdk\qt
E:\Qt\4.5SDK\qt> configure -platform win32-msvc2008 -debug-and-release
E:\Qt\4.5SDK\qt> nmake
```
使用目前主流机器配置,configure 这一步大概要用一小时。namke 大概要三个多小时。中间可能会有一些警告,可以不理会。
第 1 行和第 2 行,是配置 VC 的环境变量,如何知道环境变量已经配置好了呢?方法是在命令行下运行:
```
cl.exe /?
```
如果输出了 cl.exe 的帮助说明信息,则表示 vc 编译器环境变量设置成功。
小贴士:在命令行下,可以通过输入 set path 、 set include 和 set lib 等命令查 看 path、include、lib 环境变量的设置情况。
configure 命令主要是做两件事。
一是编译 qmake,并将编译好的 qmake.exe 拷贝到 bin 目录下(这就是要添加"%QTDIR%\bin ”到 PATH 环境变量中的原因)。
二是生成 makefile 文件(包括编译 qt 的 makefile 文件以及 examples、demos、tools 等的 makefiles 文件)。
configure 的使用是需要仔细琢磨的,可以通过加 -h 参数来看具体有哪些选项,有些 选项前面加*表示默认是选中的,+号表示由系统来判断是否支持该选项。表 4-2 列出了常 用的 configure 命令的常用参数。
表 4-2 configure 命令的常用参数
| 编译 shared 版(默认编译为 shared 版,不需要设置),并且 编译 debug 和 release 两个版本 | -debug-and-release |
|:--- |:--- |
| 使用 vc2008(包括 express 版) | -platform win32-msvc2008 |
| 使用 qt 自带的 zlib、gif、libpng、libmng、libtiff、 libjpeg | -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libtiff - qt-libjpeg |
| 编译数据库插件支持 sqlite、odbc(需要相应的 C/C++头文件 和库的支持) | -plugin-sql-sqlite -plugin-sql-odbc |
| 不支持 qt3 | -no-qt3support |
| 无 mmx 指令集支持 | -no-mmx |
| 无 3dnow 指令集支持 | -no-3dnow |
| 无 sse 和 sse2 指令集支持 | -no-sse -no-sse2 |
| 无 direct3d 支持(默认不编译 direct3d) | -no-direct3d |
| 无 openssl 支持 | -no-openssl |
| 无 dbus 支持 | -no-dbus |
| 无 phonon 支持以及 phonon 向后兼容性支持 | -no-phonon -no-phonon-backend |
| 不编译 webkit 模块 | -no-webkit |
| 不支持脚本工具 scripttools | -no-scripttools |
| 不生成 sln 以及 vcproj 文件,只生成 makefile | -no-dsp -no-vcproj |
使用表中列出的参数,其对应的 configure 命令如下:
```
configure -debug-and-release -platform win32-msvc2008 -qt-zlib -qt-gif -qt-libpng -qt-libmng
-qt-libtiff -qt-libjpeg -plugin-sql-sqlite -plugin-sql-odbc -no-qt3support -no-mmx -no-3dnow
-no-sse -no-sse2 -no-openssl -no-dbus -no-phonon -no-phonon-backend -no-webkit -no-
scripttools -no-dsp -no-vcproj
```
编译完成之后,最好进行清理以节省硬盘空间,在命令行下输入:
```
nmake confclean
```
这样清理完成之后,整个 qt 解压目录大小约为 800M 左右。
第 5 步,最后,将 Qt 路径添加到 VC 编译环境中。
依次打开【工具】->【选项】->【项目和解决方案】->【VC++目录】。 在包含文件一栏添加:
```
E:\qt-win-opensource-src-4.5.0\include\QtGui; E:\qt-win-opensource-src-4.5.0\include\QtCore;
E:\qt-win-opensource-src-4.5.0\include
```
在库文件一栏添加:
```
E:\qt-win-opensource-src-4.5.0\lib
```
将 Qt 安装路径添加到 PATH 系统环境变量中,例如:E:\qt-win-opensource-src- 4.5.0\bin(这一步可以省略,在本文的前面已经设置好了)。
第 6 步,安装 Qt for VS 的插件
要使 VS 中能新建 Qt 的项目及增加相关菜单和支持拖拉控件,还要再安装一个 Qt for VS 的插件。
在 Qt 的官网上下载该插件,可能的名字为 qt-vs-addin-1.0.2.exe(以你下载到的版 本为准)。在安装插件的时候可能会报找不到 Qt 目录,不要管它,只要找准了你刚才编译 的 Qt 目录就可以了。
安装完之后,再次打开 VS2008,就能发现已经支持 Qt 了。 第 7 步,配置和使用 VS
最后需要做的一步是在 VS 中指定使用的 Qt 目录。如果你在 Windows 上安装了多个版 本的 Qt Source,在 VS 中你还可以选择使用哪个版本的 Qt 来编译你的应用程序。
打开【工具】->【选项】->【Qt】->【Builds】,新建或选择一个 Qt 版本。
另外,通过菜单【Qt】->【Open Solution from .pro File】,可以把一个原本 Qt 的非 VS 的项目转成 VS 的项目。
至此,Qt4.5 和 MS Visual Studio 的编译环境基本上配置完成了,可以进行开发了。
- 第 1 章 走近 Qt
- 1.1 Qt 简介
- 1.2 Qt 纪事概览
- 1.3 Qt 套件的组成(以 Qt4.5 为准)
- 1.4 Qt 的授权
- 1.5 Qt 的产品
- 1.6 Qt 的服务与支持
- 1.7 Qt 的最新进展
- 1.8为什么选择 Qt
- 1.9 问题与解答
- 1.10 总结与提高
- 第 2 章 Qt 的安装与配置
- 2.1 获取 Qt
- 2.2 协议说明
- 2.3 安装 Qt
- 2.4 配置 Qt4 环境
- 2.5 问题与解答
- 2.6 总结与提高
- 第 3 章 Qt 编程基础
- 3.1 标准 C++精讲
- 3.2 Windows 编程基础
- 3.3 Linux 编程基础
- 3.4 Mac 编程基础
- 3.5 问题与解答
- 3.6 总结与提高
- 第 4 章 Qt 4 集成开发环境
- 4.1 常见的 Qt IDE
- 4.2 Qt Creator
- 4.3 Eclipse
- 4.5 问题与解答
- 4.6 总结与提高
- 第 5 章 使用 Qt 基本 GUI 工具
- 5.1 使用 Qt Designer 进行 GUI 设计
- 5.2 使用 Qt Assistant 获取在线文档与帮助
- 5.3 使用 Qt Demo 学习 Qt 应用程序开发
- 5.4 问题与解答
- 5.5 总结与提高
- 第 6 章 Qt 4 程序开发方法和流程
- 6.1 开发方法
- 6.2 Hello Qt
- 6.3 几个重要的知识点
- 6.4 问题与解答
- 6.5 总结与提高
- 第 7 章 对话框
- 7.1 QDialog 类
- 7.2 子类化 QDialog
- 7.3 快速设计对话框
- 7.4 常见内建(built in)对话框的使用
- 7.5 模态对话框与非模态对话框
- 7.6 问题与解答
- 7.7 总结与提高
- 第 8 章 主窗口
- 8.1 主窗口框架
- 8.2 创建主窗口的方法和流程
- 8.3 代码创建主窗口
- 8.4 使用 Qt Designer 创建主窗口
- 8.5 中心窗口部件专题
- 8.6 Qt4 资源系统专题
- 8.7 锚接窗口
- 8.8 多文档
- 8.9 问题与解答
- 8.10 总结与提高
- 第 9 章 Qt 样式表与应用程序观感
- 9.1 应用程序的观感
- 9.2 QStyle 类的使用
- 9.3 样式表概述
- 9.4 使用样式表
- 9.5 问题与解答
- 9.6 总结与提高
- 第 10 章 在程序中使用.ui 文件
- 10.1 uic 的使用
- 10.2 Ui_YourFormName.h 文件的组成
- 10.3 编译时加入处理.ui 文件的方法
- 10.4 运行时加入处理.ui 文件的方法
- 10.5 信号与槽的自动连接
- 10.6 问题与解答
- 10.7 总结与提高 本章主要讲解了以下内容:
- 第 11 章 布局管理
- 11.1 基本概念和方法
- 11.2在 Qt Designer 中使用布局
- 11.3 基本布局实践
- 11.4 堆栈布局
- 11.5 分裂器布局
- 11.6 自定义布局管理器
- 11.7 布局管理经验总结
- 11.8 问题与解答
- 11.9 总结与提高
- 第 12 章 使用 Qt Creator
- 12.1 Qt Creator 概览
- 12.2 Qt Creator 的组成
- 12.3 快捷键和常用技巧
- 12.4 Qt Creator 构建系统的设置
- 12.5 处理项目间依赖关系( Dependencies )
- 12.6 Qt 多版本共存时的管理
- 12.7 使用定位器在代码间快速导航
- 12.8 如何创建一个项目
- 12.9 实例讲解
- 12.10 使用 Qt Creator 调试程序
- 12.11 问题与解答
- 12.12 总结与提高
- 第 13 章 Qt 核心机制与原理
- 13.1 Qt 对标准 C++的扩展
- 13.2 信号与槽
- 13.3 元对象系统
- 13.4 Qt 的架构
- 13.5 Qt 的事件模型
- 13.6 构建 Qt 应用程序
- 13.7 总结与提高
- 附录 A qmake 使用指南
- A.1 qmake 简介
- A.2 使用 qmake
- 附录 B make 命令
- B.1 命令解释
- B.2 使用 make 自动构建
- 附录 C Qt 资源
- C.1Qt 官方资源
- C.2 Qt 开发社区