此文为本人实践实录,转载请保留地址以便读者跟踪最新改动

http://blog.csdn.net/leee101/archive/2008/10/13/3072093.aspx

--更新记录--

2009-4-24  转载一篇介绍多个QT4的IDE的,另外QT4.5.1及QTCreator1.1.0昨天发布了,正在下载中

--更新预告--

将加入使用Code:Blocks开发QT程序的部分

将加入最新学习QCreator1.0的体会

文章摘要:

1,windows,linux平台下安装使用eclipse + QT4.4.3开发环境

2,windows,linux新建project时的配置(不使用QT预置项目类型,而是手工配置)

正文:

使用Eclipse开发平台的原因:

由于要在windows/Linux上开发,希望统一开发工具.

以前开发QT3时,界面开发使用QT自带的designer, 程序也可以在designer里面全部完成.有时也用一些轻量级的编辑工具,如windows下FlexEdit(下载,相当不错,尤其是自动分析C++源文件中的类,方法,快速导航功能极方便),Linux下的vi(不论何时,VI是不能忘记的,尤其是出差时,linux/unix下唯一能保证有的就是它了).

后来使用SlickEdit开发工具,分析代码与写代码都相当方便.与QT designer配合使用真的是很方便.

Qt4的出现,qt designer的功能大大减低,需要新的集成开发工具.在Windows下,vs2005+Visual Assist X + QT也是相当方便的,只是无法跨平台.所以趁着学QT4的,试试eclipse集成开发工具.

一 Windows平台安装 (Eclipse , c++, qt4, fortran)

1.1 所需文件:

DEV-CPP4.9.9.2.exe --> 要用其集成的MinGW开发环境(make and g++)    (20081204,Code::Blocks更强大)

qt-win-opensource-4.4.3-mingw.exe --> QT的开源版本

eclipse-cpp-ganymede-SR1-win32.zip  --> 集成了CDT插件的Eclipse

qt-eclipse-integration-win32-1.4.0.exe  --> 把QT集成到Eclipse中去的.

1.2 安装过程

DEV-CPP4.9.9.2.exe安装到d:\qt\dev-cpp目录

qt-win-opensource-4.4.3-mingw.exe安装到d:\qt\4.4.3目录 (安装过程需要指定MinGW的位置,把默认的c:\MinGW改为d:\qt\dev-cpp即可)

eclipse-cpp-ganymede-SR1-win32.zip 直接解压到d:\eclipse即可.(需要安装jre环境后才能运行,本人用1.6)

qt-eclipse-integration-win32-1.4.0.exe  安装过程中需要指定eclipse与MinGW的位置,按上面的实际安装目录修改. 安装到d:\qt\trolltech\eclipse

1.3 编辑运行QT4程序

1.3.1 命令行编译与运行QT程序,有三种方法:

法一: 需要通过"开始"->"程序"->"Qt by Nokia v4.4.3 (OpenSource)" ->"Qt 4.4.3 Command Prompt" 打开DOS命令行窗口,再编译运行;

法二: 打开任意一个Dos窗口, 执行一下 d:\qt\4.4.3\bin/qtvars.bat ,设置相应环境变量.

法三: 修改系统环境变量:

新建环境变量 QTDIR,值为d:\Qt\4.4.3

新建环境变量 QMAKESPEC , 值为 win32-g++

修改原path变量,在原值最前面增加d:\Qt\4.4.3\bin;D:\qt\DEV-CPP\bin;%SystemRoot%\System32;

源代码编辑工具可以使用dev-c++, editplus, FlexEdit等

1.3.2 使用Eclipse编辑,编译,运行

这里要注意, 安装qt-eclipse-integration-win32-1.4.0.exe自动生成的开始菜单项"Qt Eclipse Integration v1.4.0" -> "Start Eclipse with MinGW" 有问题. 需要编辑d:\qt\trolltech\eclipse\start.bat,把QT需要的环境变量设置语句加入,完整的如下:

echo Setting up a MinGW/Qt only environment...

echo -- QTDIR set to d:\Qt\4.4.3

echo -- PATH set to d:\Qt\4.4.3\bin

echo -- Adding D:\qt\DEV-CPP\bin to PATH

echo -- Adding %SystemRoot%\System32 to PATH

echo -- QMAKESPEC set to win32-g++

set QTDIR=d:\Qt\4.4.3

set PATH=d:\Qt\4.4.3\bin

set PATH=%PATH%;D:\qt\DEV-CPP\bin

set PATH=%PATH%;%SystemRoot%\System32

set QMAKESPEC=win32-g++

echo Starting eclipse...

call "D:\eclipse\eclipse.exe" -clean

启动eclipse后, "File" -> "new" -> "other" ,选择QT下面的某一个项目,如"QT Console project"或"QT GUI project", 然后指定项目名, 就可以使用菜单"project" ->"build all"进行编译了. 默认情况下生成debug格式.

运行,需要生成运行配置. "run" -> "run configurations..."  , 双击"C++ local application"在下面生成一个新的配置"new_configuration", 在右侧点"project"后的"browse..."选择刚才新建的项目名, 点"c/c++ application"后"search project..." 找到可执行文件, 然后就可以点击"run"运行了. (注意, 如果上面新建的是qt console project, 需要在建立项目后, 点"project" ->"properties" , 双击左侧"c/c++ Make project" , 然后在右侧选择"binary parser"标签, 选中"elf parse"与"pe windows parser". 否则在"search project..." 时会找不到可执行文件. )

1.4 让eclipse支持fortran:

下载photran40b4-master.zip

启动eclipse, 菜单"help" -> "software updates" ,选中"Available Software"标签, "Add Site..." , 在弹出的对话框中点"Archive...", 找到硬盘上的photran40b4-master.zip,按提示完成安装,重启eclipse,就发现在File,New时多了对Fortran的支持.

====================

二 Linux平台安装 (Eclipse ,c++, qt4, fortran)

1, 安装JDK1.6.bin,并配置环境变量.

安装目录/data/opt/jdk1.6.0_01

修改/etc/profile, 在最后添加java的环境变量:

JAVA_HOME=/data/opt/jdk1.6.0_01

JAVA_BIN=/data/opt/jdk1.6.0_01/bin

PATH=$PATH:$JAVA_HOME/bin

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME JAVA_BIN PATH CLASSPATH

2, 安装eclipse

解压eclipse-cpp-ganymede-SR1-linux-gtk.tar.gz到/data/opt/下

3, 编译安装qt

$tar jxvf qt-x11-opensource-src-4.4.3.tar.bz2

$cd qt-x11-opensource-src-4.4.3

$./configure -prefix /data/opt/qt-4.4.3  -no-libtiff

$make && make install

$vi /data/opt/qt-4.4.3/setqt4 (以后在需要编译QT程序时,执行source setqt4就可以设置好环境变量)

export QTDIR=/data/opt/qt-4.4.3

export PATH=$QTDIR/bin:$PATH

export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

4, 让eclipse集成QT

$cd /data/opt/eclipse

$tar zxvf qt-eclipse-integration-linux.x86-gcc3.3-1.4.0.tar.gz

5, 让eclipse集成fortran支持,方法与windows下相同, 使用的文件也相同

6, 安装apache2,mysql5,php5,svn服务器

7, 安装slickedit, matlab7

=====windows平台,eclipse中编写QT程序==2008-10-13=====

一:在eclipse中编写一般c++程序

1, file->new ->other ->展开C++下的C++ Project ->不选中"Show project types and toolchains only if they are ssupported on the platform" ->Project Type="Executable"下的"Empty Project", ToolChains="MinGW GCC"

2, 编写文件或导入现有文件(File -> import ->General 下的 File system)

3, projects -> properties, 展开c/c++ Build,settings,在右侧tab页中选中"Binary Parsers", 应该有两项是选中的"PE Windows Parser"与"cygwin PE Parser" (默认生成的未选中"cygwin PE Parser"项,造成在下一步生成运行配置时无法自动找到exe)

4, 生成运行配置. "run" -> "run configurations..."  , 双击"C++ local application"在下面生成一个新的配置"new_configuration", 在右侧点"project"后的"browse..."选择刚才新建的项目名, 点"c/c++ application"后"search project..." 找到可执行文件, 然后就可以点击"run"运行了.

二:导入有pro文件的qt项目到eclipse中

file -> import -> 选择qt下qt project ->选择一个QT的项目文件(xx.pro),就生成一个与原project同名的eclipse项目.但"生成运行配置"还是要做的,之后就可以编译与运行了.

三,一般C++ Project如何增加对QT的支持

file, new, c++ project => Project type选择"Executable"下的"Empty Project",不选中"Show project types and toolchains only if they are ssupported on the platform",然后在右侧的"Tool Chains"选择"MinGW GCC",然后点击"next", 在弹出的对话框中点击"Advanced settings",展开"c/c++ build" -> "settings",在右侧展开"gcc c++ compiler","Directories", 右侧"include pathes" , 浏览添加d:\Qt\4.4.3\include;

展开"GCC C++ Linker","Libraries",在Libraries(-l)中添加三次,分别添加QtCored4, QtGuid4, qtmaind;

在"Library search path"添加d:\qt\4.4.3\lib;

新建Source File, 输入代码,就可以正常编译了.

测试代码:

#include #include int main(int argc, char *argv[])

{

QApplication app(argc, argv);

QPushButton hello("Hello world!");

hello.resize(100, 30);

hello.show();

return app.exec();

}

测试代码二:

/*

* myclass.h

*

*  Created on: 2008-10-14

*      Author: lj

*/

#ifndef MYCLASS_H_

#define MYCLASS_H_

#include #include class MyClass : public QObject

{

public:

MyClass( const QString& text, QObject *parent = 0 );

const QString& text() ;

void setText( const QString& text );

int getLengthOfText() ;

private:

QString m_text;

};

#endif /* MYCLASS_H_ */

/*

* myclass.cpp

*

*  Created on: 2008-10-14

*      Author: lj

*/

#include "myclass.h"

MyClass::MyClass( const QString &text, QObject *parent ) : QObject( parent )

{

m_text = text;

}

const QString &MyClass::text() { return m_text; }

void MyClass::setText( const QString &text ) { m_text = text; }

int MyClass::getLengthOfText() { return m_text.size(); }

/*

* main.cpp

*

*  Created on: 2008-10-14

*      Author: lj

*/

#include "myclass.h"

#include int main( int argc, char **argv )

{

QObject parent;

MyClass *a, *b, *c;

a = new MyClass( "foo", &parent );

b = new MyClass( "ba-a-ar", &parent );

c = new MyClass( "baz", &parent );

qDebug() << a->text() << " (" << a->getLengthOfText() << ")";

a->setText( b->text() );

qDebug() << a->text() << " (" << a->getLengthOfText() << ")";

return a->getLengthOfText() - c->getLengthOfText();

}

至此,在windows平台上编译运行QT4程序的设置已经完成,后面就是实际的编程了.

=====Linux平台,Eclipse开发Qt4程序======

1, $source /data/opt/qt-4.4.3/setqt4 设置环境变量

export QTDIR=/data/opt/qt-4.4.3 export PATH=$QTDIR/bin:$PATH

export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

2,然后启动eclipse

3, 新建项目,类型为C++ 下“C++ Project"  => project type = "executable"下"Empty Project"  ,  Toolchains="Linux Gcc" =>点Next =>点"Advanced settings"  => 展开"c/c++ build" -> "settings",在右侧展开"gcc c++ compiler","Directories", 右侧"include pathes" , 浏览添加/data/opt/qt/4.4.3/include;   =>  展开"GCC C++ Linker","Libraries",在Libraries(-l)中添加两次,分别添加QtCore, QtGui ; ==> 在"Library search path"添加/data/opt/qt/4.4.3/lib

4, 新建Source File, 输入代码,就可以正常编译了.

5,可能问题:

5.1 如果在进入eclipse前,没有设置环境变量LD_LIBRARY_PATH,则项目能编译,但运行时提示找不到qt的动态链接库而失败。

5.2 一般教材上写文件包含是 #include ,但由于上面我们添加的include中只添加了qt下的include这一级目录,没有添加下面的子目录,所以写代码时要自己根据库文件所在子目录,添加所属包名,即变为#include , 否则在编译时会提示找到头文件。

5.3 第三步只是演示了如何从一般c/c++项目,通过添加配置而变成支持QT,实际开发过程是,在新建项目时,可以选择QT下的各种QT项目(如Qt Console Project, Qt Gui Class, Qt Gui Project, Qt Resource File),或Qt Designer下的Qt Designer Form项目。这样就不需要自己添加相应include与lib.更方便快捷!

=====下面转贴一篇======

QT和eclipse的集成很简单,安装集成包以后设置一下qt的bin目录和include目录即可,CDT中 会新增qt类型的项目。

QT和eclipse的集成以后,最大的好处就是可以使用qt带的可视化设计工具,采用的是类似于XUI的做法,很清爽。

和习惯的vs,netbean做法有些区别, 简单记录一下。

1. 每增加一个ui表单或者对话框类会生成如下文件

*  一个对象类cpp文件,一个对象类头文件

而在每一个对象类中会自动增加一个ui类的声明,可以用此来引用包含的ui元素

Ui::AddDialogClass ui;

*  一个"ui_对象名.h" 格式的头文件 用来保存在designer中增加的元素,  这部分应该不要手工修改。这部分应该向netbean学习,应该设置为只读。

* 一个对象.ui文件 Form file,文本类型用来描述对象设计布局。双击可以打开设计器。注意:Form file文件必须保存以后才会生成上一个ui头文件.

2. 事件处理, 在一个表单内可以使用宏直接定义,不需要使用connect进行连接

比如在头文件中申明

private slots:

void on_addButton_clicked();

则此slots会自动对应到addbutton的 clicked事件,依靠的是名字规范。

在ui头文件中可以找到这样的代码

QMetaObject::connectSlotsByName(AddressBookClass);

比单纯手写代码简单一些。

3. 事件处理也可以使用edit signal和slot 编辑器来实现可视化的事件关联

方法是拖拽一个对象的引导箭头到另外一对象上,选择要关联的signal。

4. QT中每个项目有一个.pro文件,负责项目内的文件资源汇总管理。在eclipse中新增source文件时要记得将文件加人pro中。可以以可视化的方式进行管理,比较简单。

5. 其他

* 在编辑状态 用ctrl+拖到可以复制对象,shift多选

* layout可以多重嵌套,这和swing不同,不过更好用。 可以选择几个元素以后右键设定这组元素的layout。 元素之间可以用spacer来控制距离,很好用。

* 属性编辑器有点弱智,居然不能ctrl+ v 必须用鼠标右键

整体感觉:

*  ui布局设计方面比较灵活,比netbean和vs都好用。

*  事件处理还是稍有点麻烦,不能直接可视化生成,在头文件和cpp文件中手工加代码还是有点不爽。

*  系统比较稳定。就是编译有点慢。

=============

转一篇:

设置Eclipse3.3.2 + MinGW + CDT4.0.3 + Qt4.3.4

下载Eclipse3.3.2

从Eclipse的Help->Software Update安装CDT

注意,这时,CDT中的C++ Project 并不支持MinGW. 选择“show all tool chain”和选择MinGW,新建“Makefile project”,然后点击完成.

新建一个C++文件,如 main.cpp

Set project properties:

C/C++ Build: 选中 “Generate Makefiles automatically”                  C/C++ Build->Tool chain editor: select tools->                  左边是GCC C++ Linker,右边是MinGW C++ Linker.

现在就可以Build工程了,然后Run as Local C/C++ Application.

至此,CDT成功的安装设置.

设置Eclipse编写Qt程序

设置好Eclipse, CDT, MinGW

新建“C++ Makefile project + MinGW”,下一步

Advanced setting...

C/C++ Build->Builder Setting:

Build command: make -f Makefile.Release                  注意:这里不要选中普通C++ Makefile project的“Generate Makefiles automatically”选项.                  因为Qt的Makefile文件使用qmake -project和qmake来生成.

C/C++ General->Paths and Symbols:

Includes:加入Qt安装目录下的include目录[include\QtGui],应用,完成.

新建一个C++文件,写入Qt程序,如

#include#includeint main(int argc, char *argv[]) {

QApplication app(argc, argv);

QPushButton *button = newQPushButton("Button");

button->show();

button->setWindowTitle("Das ist Button");

QObject::connect(button, SIGNAL(clicked()), qApp, SLOT(quit()));

return app.exec();

}

从命令提示行进行Qt的工程目录,使用qmake -project 和qmake生成Makefile文件(我们将要使用其生成的Makefile.Release文件).

在eclipse中点击:project->build

在左边的工程导航栏中在工程上右键:Run as Local C/C++ Applicatoin

不出意外,Qt程序应该可以运行了,会弹出含有一个按钮的窗口.

最关键的是4,5,7三步中的设置: build command, includes, generate makefiles.

====再转一篇@2009-4-24==

可能学习qt的人普遍感觉qt的ide开发环境比较少,也比较难找。其实作linux开发的,ide环境是比较匮乏的。

这里我推荐几款比较好的ide:

1,kdevelop 3.5 版 ,老牌的集成开发环境 ,支持qt4

2,monkey studio  ,

3,edyuk                  ,

4,cobras                ,

5,Dev-cpp            ,

6,QDevlop  重点推荐,非常好用http://qdevelop.org/

使用方法:http://blog.csdn.net/lhfeng/archive/2007/11/05/1867585.aspx

7,Eclipse  重点推荐,资源占用较少

使用方法:http://blog.csdn.net/lhfeng/archive/2007/12/06/1921265.aspx

8,其它的还有vs2005也不错.不过我想还是应该支持正版事业.

希望能为qt的爱好者提供力所能及的帮助。

linux eclipse qt5 ui_helloworld.h,转载Eclipse+qt的开发环境相关推荐

  1. Qt-4.6.3移植与Qt creator开发环境建立

    最近把Qt到开发环境建立了起来,以后打算多点时间在学习Qt上面,下面是我的移植与搭建过程,现在贴出来希望能对大家有点帮助..... 作者:顾文彪 博客:http://blog.chinaunix.ne ...

  2. Qt官方开发环境生成的exe发布方式--使用windeployqt

    2019独角兽企业重金招聘Python工程师标准>>> Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll, 如果自己去复制dll,很可能丢三落 ...

  3. Qt开发笔记(一):Qt+FFmpeg开发环境搭建以及工程模板

    原博主博客地址:https://blog.csdn.net/qq21497936 本文章博客地址:https://blog.csdn.net/qq21497936/article/details/90 ...

  4. 建立Qt+VS2010开发环境

    简单建立Qt+VS2010开发环境 多天不关注Qt了,发现竟然又被digia收购了,也许是好事,digia计划将Qt应用到Android.iOS及Windows8平台上. 简单介绍下digia(来着网 ...

  5. 如何在Windows下搭建Qt安卓开发环境?

    一.导读 本文描述如何在Windows下搭建Qt安卓开发环境,由于Qt维护的安卓开发环境和安卓开发环境在很大程度上不兼容,所以在选择Qt版本的时候需要注意:在JDK和Android SDK环境的选择上 ...

  6. Qt跨平台开发环境搭建

    Qt跨平台开发环境搭建 1.     背景介绍 Qt是一个跨平台的C++图形用户界面应用程序框架.它提供给应用程序开发者丰富的图形用户界面所需的所有功能.而且,Qt很容易扩展,并且允许真正地组件编程. ...

  7. 嵌入式Linux(一):东山派壹号 ubuntu开发环境配置

    前言 最近要学嵌入式Linux,网上查了下,被价格吓死了,基本上都是四五百或以上.终于找到了东山派壹号这块板子.主板和底板加起来两百多.本文,主要介绍这块板子 嵌入式linux开发环境的搭建,包括相关 ...

  8. linux中python解释器的配置_CentOS7配置Python3开发环境

    许多小伙伴在刚接触Unix/Linux操作系统时会非常的不适应,毕竟突然的命令行操作会使习惯于Windows桌面操作的人特别难受,尤其是像笔者这样的手残党,是需要一段时间来适应的. 记得刚刚接触到Un ...

  9. Linux Ubuntu 安装编译Opencv 3.4.3 C++开发环境

    在安装Autoware之前,需要先安装Opencv,之前在Windows下安装了Opencv,挺复杂的.不过,在Ubuntu 16.04环境中配置安装Opencv相对来说,比较简单. Linux Ub ...

  10. Qt Symbian 开发环境安装

    Qt Symbian 开发环境安装 转自:悟道2011 cnblogs Qt for Symbian 的开发环境主要由三部分组成:基本工具;Symbian SDK;Qt for Symbian SDK ...

最新文章

  1. 编写同时在PyTorch和Tensorflow上工作的代码
  2. NBT:扩增子及其他测序的最小信息标准和测序规范(MIMARKS)
  3. jquery等待特定元素加载再执行相关函数
  4. java链式编程_Java 链式编程 和 lombok 实现链式编程
  5. 增加数据_太原二手房七月数据出炉,挂牌量增加800余套,万柏林区涨幅大
  6. 嵌入式入门学习笔记4:[转]什么是嵌入式底层驱动开发和嵌入式底层软件开发...
  7. linux内核cpu负载计算,CPU 负载 — The Linux Kernel documentation
  8. 三星的S3C2440A 存储器控制器
  9. ASP.NET状态管理之六(缓存Cache)
  10. js模拟3D场景效果
  11. OpenWRT上如何让 ss 设置指定域名dst bypass
  12. 计算机联锁车务仿真培训系统 casco模式,计算机联锁仿真培训系统
  13. 警察招计算机科学与技术专业,山西警官高等专科学校计算机科学与技术系
  14. 移动端性能监控方案Hertz
  15. USB 2.0规范中译本 第二章 术语和缩写
  16. 贪心算法实现最大收益
  17. 第八篇order订单专题(2)订单通知及属性
  18. 国考计算机三级嵌入式,英语初级视频学习
  19. arm服务器芯片尺寸,华为公开ARM服务器芯片“Hi1620”:7nm+64核心
  20. 冯诺依曼原理计算机称为,冯·诺依曼提出的计算机工作原理又称为 工作原理。...

热门文章

  1. ChromeDriver和PhantomJS配置到$PATH
  2. ASP.NET MVC 5 学习教程:数据迁移之添加字段
  3. 项目设计----会员充值(基础)
  4. Kotlin的匿名方法实现接口回调
  5. Spring Boot入门篇-默认安全配置
  6. Gson日期格式异常-com.google.gson.JsonSyntaxException
  7. linux禁用scp命令,Linux系统如何关闭scp和sftp命令
  8. python行数据转列数据_python – 如何转换数据框,以便列值是行值
  9. 架构实战篇:使用MyBatis延迟加载模式为数据库减压,附演示实例
  10. 技术选型和知识点介绍(上)