文章摘要:
  • Windows,Linux平台下安装使用Eclipse + QT4.4.3开发环境
  • Windows,Linux新建project时的配置(不使用QT预置项目类型,而是手工配置)
使用Eclipse开发平台的原因:
由于要在Windows/Linux上开发,希望统一开发工具.
以前开发QT3时,界面开发使用QT自带的designer, 程序也可以在Designer里面全部完成.有时也用一些轻量级的编辑工具,如Windows下FlexEdit(www.xuyibo.org下载,相当不错,尤其是自动分析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)
  • 所需文件:

DEV-CPP4.9.9.2.exe --> 要用其集成的MinGW开发环境(make and g++)
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中去的.

  • 安装过程

DEV-CPP4.9.9.2.exe安装到C:\Qt\dev-cpp目录
qt-win-opensource-4.4.3-mingw.exe安装到C:\Qt\4.4.3目录 (安装过程需要指定MinGW的位置,把默认的C:\MinGW改为C:\Qt\dev-cpp即可)
eclipse-cpp-ganymede-SR1-win32.zip 直接解压到C:\Eclipse即可 (需要安装jre环境后才能运行,本人用1.6)
qt-eclipse-integration-win32-1.4.0.exe 安装过程中需要指定Eclipse与MinGW的位置,按上面的实际安装目录修改.安装到C:\Qt\Trolltech\Eclipse

  • 编辑运行QT4程序

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

法一: 需要通过"开始"->"程序"->"Qt by Nokia v4.4.3 (OpenSource)" ->"Qt 4.4.3 Command Prompt" 打开DOS命令行窗口,再编译运行;
法二: 打开任意一个Dos窗口, 执行一下 C:\Qt\4.4.3\bin/qtvars.bat ,设置相应环境变量.
法三: 修改系统环境变量:
      新建环境变量 QTDIR, 值为 C:\Qt\4.4.3
      新建环境变量 QMAKESPEC, 值为 win32-g++
      修改原path变量, 在原值最前面增加 C:\Qt\4.4.3\bin;C:\Qt\DEV-CPP\bin;%SystemRoot%\System32;
源代码编辑工具可以使用dev-c++, Editplus, FlexEdit等

使用Eclipse编辑,编译,运行

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

echo Setting up a MinGW/Qt only environment... 
echo -- QTDIR set to C:\Qt\4.4.3
echo -- PATH set to C:\Qt\4.4.3\bin
echo -- Adding C:\Qt\DEV-CPP\bin to PATH
echo -- Adding %SystemRoot%\System32 to PATH
echo -- QMAKESPEC set to win32-g++
set QTDIR=C:\Qt\4.4.3 
set PATH=C:\Qt\4.4.3\bin
set PATH=%PATH%;C:\Qt\DEV-CPP\bin
set PATH=%PATH%;%SystemRoot%\System32
set QMAKESPEC=win32-g++
echo Starting eclipse... 
call "C:\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..." 时会找不到可执行文件. )

  • 让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)
 
  • 安装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

  • 安装Eclipse
解压eclipse-cpp-ganymede-SR1-linux-gtk.tar.gz到/data/opt/下
  • 编译安装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

  • 让Eclipse集成QT
 
$cd /data/opt/eclipse
$tar zxvf qt-eclipse-integration-linux.x86-gcc3.3-1.4.0.tar.gz
  • 让Eclipse集成fortran支持,方法与Windows下相同, 使用的文件也相同
  • ­安装apache2,mysql5,php5,svn服务器
  • 安装slickedit, matlab7
 
 
 
Windows平台,Eclipse中编写QT程序
 
  • 在Eclipse中编写一般C++程序
    • 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"
    • 编写文件或导入现有文件(File -> import ->General 下的 File system)
    • projects -> properties, 展开c/c++ Build,settings,在右侧tab页中选中"Binary Parsers", 应该有两项是选中的"PE Windows Parser"与"cygwin PE Parser" (默认生成的未选中"cygwin PE Parser"项,造成在下一步生成运行配置时无法自动找到exe)
    • 生成运行配置. "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" , 浏览添加C:\Qt\4.4.3\include;
展开"GCC C++ Linker","Libraries",在Libraries(-l)中添加三次,分别添加QtCored4, QtGuid4, qtmaind;
在"Library search path"添加 C:\Qt\4.4.3\lib;
 
新建Source File, 输入代码,就可以正常编译了.
 
测试代码:
#include <QtGui/QApplication> 
#include <QtGui/QPushButton>
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 
#ifndef MYCLASS_H_ 
#define MYCLASS_H_ 
#include <QtCore/QString> 
#include <QtCore/QObject>
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 
#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
#include "myclass.h" 
#include <QtCore/QtDebug>
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程序

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

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

  • 然后启动Eclipse
  • 新建项目,类型为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
  • 新建Source File, 输入代码,就可以正常编译了.
    • 可能问题:
      • 如果在进入Eclipse前,没有设置环境变量LD_LIBRARY_PATH,则项目能编译,但运行时提示找不到Qt的动态链接库而失败。
      • 一般教材上写文件包含是 #include <QtDebug>,但由于上面我们添加的include中只添加了qt下的include这一级目录,没有添加下面的子目录,所以写代码时要自己根据库文件所在子目录,添加所属包名,即变为#include <QtCore/QtDebug>, 否则在编译时会提示找到头文件。
      • 第三步只是演示了如何从一般c/c++项目,通过添加配置而变成支持QT,实际开发过程是,在新建项目时,可以选择QT下的各种QT项目(如Qt Console Project, Qt Gui Class, Qt Gui Project, Qt Resource File),或Qt Designer下的Qt Designer Form项目。这样就不需要自己添加相应include与lib.更方便快捷!

http://cool.worm.blog.163.com/blog/static/6433900620094250839527/

Eclipse+Qt开发环境设置(Linux和Win)的更多相关文章

  1. Eclipse Qt开发环境的建立

    1.下载Eclipse目前Eclipse+CDT已经可以集成下载了,好像优化过了,速度还比较快.下载的地址是:http://www.eclipse.org/downloads/,选择“Eclipse ...

  2. Hadoop集群 -Eclipse开发环境设置

    1.Hadoop开发环境简介 1.1 Hadoop集群简介 Java版本:jdk-6u31-linux-i586.bin Linux系统:CentOS6.0 Hadoop版本:hadoop-1.0.0 ...

  3. 【Qt开发】Linux下Qt开发环境的安装与集成

    近期工作需要在Linux下用Qt进行C++开发,所以就在linux下尝试装QT开发环境.本人用的linux是CentOS 6.5.现在对安装过程做出总结.有两种安装方式,下面分别详述: 1 图形化安装 ...

  4. Windows+QT+Eclipse+MinGW搭建QT开发环境详细教程

     Windows+QT+Eclipse+MinGW搭建QT开发环境详细教程 一.准备工具: QT-SDK for Windows:http://get.qt.nokia.com/qtsdk/qt-sd ...

  5. win使用MSYS2安装Qt开发环境

    原文链接 MSYS2 下载地址: pacman的具体用法 有pacman的具体使用方法.我们首先对系统升级 我们首先对系统升级 pacman -Syu 就会检测整个系统可以升级的组件,并自动下载安装, ...

  6. Hadoop集群(第7期)_Eclipse开发环境设置

    1.Hadoop开发环境简介 1.1 Hadoop集群简介 Java版本:jdk-6u31-linux-i586.bin Linux系统:CentOS6.0 Hadoop版本:hadoop-1.0.0 ...

  7. Ubuntu 12.04 搭建 Eclipse Android 开发环境(转)

    Ubuntu 12.04 搭建 Eclipse Android 开发环境 http://blog.sina.com.cn/s/blog_93dc666c0101b39p.html (2012-09-0 ...

  8. QT开发环境安装配置教程

    QT开发环境安装配置教程 分类: QT2012-11-29 23:31 35366人阅读 评论(12) 收藏 举报 Linux版的直接在ubutnu软件中心输入QT,安装响应的Designer,Cre ...

  9. eclipse+hbase开发环境部署

    一.前言 1. 前提 因为hbase的运行模式是伪分布式,需要用到hdfs,所以在此之前,我已经完成了hadoop-eclipse的开发环境搭建,详细看另一篇文章:hadoop开发环境部署——通过ec ...

随机推荐

  1. Kmp 算法模板 C

    /** * name:KMP * time:2012-11-22 * 字符串快速匹配 */ #include<stdio.h> #include<string.h> typed ...

  2. cocos2d ccitemimage

    #ifndef __HELLOWORLD_SCENE_H__ #define __HELLOWORLD_SCENE_H__ #include "cocos2d.h" class H ...

  3. HDU 1241 (DFS搜索+染色)

    题目链接:  http://acm.hdu.edu.cn/showproblem.php?pid=1241 题目大意:求一张地图里的连通块.注意可以斜着连通. 解题思路: 八个方向dfs一遍,一边df ...

  4. POJ 1191 棋盘分割(DP)

    题目链接 大体思路看,黑书...其他就是注意搞一个in数组,这样记忆化搜索,貌似比较快. #include <cstdio> #include <cstring> #inclu ...

  5. Graph database_neo4j 底层存储结构分析(3)

    3.3  通用的Store 类型 3.3.1    id 类型 下面是 neo4j db 中,每种Store都有自己的ID文件(即后缀.id 文件),它们的格式都是一样的. [test00]$ls - ...

  6. 过滤html字符的方法

    昨天在看公司网站的产品详细页面,发现只有一个公司的JS产品轮换特效不会出,找了半天,程序都是一样的,原因是什么呢?原来是公司的别名是xiandahg,里面含有and字符被过滤掉了. public st ...

  7. PHP wget 增强脱裤脚本(PDO MYSQL)

    脚本参考了 LCX Gavin2位前辈的帖子.在此表示非常的感谢. https://www.t00ls.net/thread-26740-1-1.html https://www.t00ls.net/ ...

  8. log4net配置文件设置

    windows服务执行cmd命令 最长公共子字符串 log4net配置文件设置 2011-11-16 13:15:41|  分类: Notes |  标签: |字号大中小 订阅     log4net ...

  9. 完美洗牌&洗牌

    完美洗牌问题,给定一个数组a1,a2,a3,...an,b1,b2,b3..bn,把它最终设置为b1,a1,b2,a2,...bn,an这样的. O(n)的算法,O(n)的空间. 对于前n个数,映射为 ...

  10. [听听音乐]when you believe [singer: mariah carey]

    movie: prince of egypt Lyrics   Many nights we prayed With no proof anyone could hear In our hearts ...