http://hi.baidu.com/ltb6w/item/3a51f11926fda60ce75c361d

Eclipse进行C/C++开发——Eclipse+CDT+MinGW的配置与使用详解

Eclipse作为目前如日中天的开放式IDE,由于有大量插件支持,所以几乎无所不能,除了Java开发的老本行之外,C/C++开发也不在话下。下面就给大家介绍如何使用CDT(C/C++ Development Tools)进行C/C++开发。本文适合有一定Eclipse使用经验的读者,如果您对Eclipse的基本操作还很陌生,请先在网上搜索相关教程进行学习。1. 相关软件的下载、安装和配置请先从http://www.eclipse.org/downloads/下载的Eclipse SDK,目前的最新版本是3.3.1,然后从http://www.eclipse.org/cdt/downloads.php 下载与Eclipse版本相配套的CDT,或者直接下载打包好的Eclipse IDE for C/C++ Developers ,这个版本包含了最新版本的eclipse IDE的核心和与之配套的CDT,免去了安装CDT的麻烦。为了能够正常运行Eclipse,请确保你的计算机上装有JDK,并且已经配置好了环境变量。由于CDT中并不自带编译器,所以还需要安装一个C/C++的编译器,这里给大家推荐的是MinGW,下载地址为http://www.mingw.org/download.shtml,以下将使用MinGW-3.1.0-1进行讲解。以上软件凑齐之后,便可以进行安装配置了。首先,解压Eclipse SDK的安装程序即可完成Eclipse的安装,这里假设将其解压到C:\路径下,则C:\下会出现一个名为“eclipse”的文件夹。接着,将CDT的安装文件同样解压到C:\路径下,由于其解压后同样是名为“eclipse”的文件夹,所以会插入或覆盖相应的文件,解压完成后,CDT的安装工作便完成了。

然后,安装MinGW,假设安装到C:\MinGW目录下。安装完成之后进行相应的环境变量的配置。右键“我的电脑”->“属性”->“高级”->“环境变量”,在“系统变量”中修改“Path”变量,在最后面添加“C:\MinGW\bin;”,注意,如果原来的Path变量值不是以“;”结尾的,一定要添加上一个分号在“C:\MinGW\bin;”之前,以起到分隔的作用。如图1。

图1

接下来,在用户变量中分别新建并配置如下变量,如图2:

LIBRARY_PATH :C:\MinGW\lib C_INCLUDE_PATH :C:\MinGW\include CPLUS_INCLUDE_PATH :C:\MinGW\include\c++\;C:\MinGW\include\c++\3.2.3\mingw32; C:\MinGW\include\c++\3.2.3\backward;C:\MinGW\include

                                           图2

以上步骤完成之后,请启动Eclipse进行CDT相关参数的配置。在菜单栏中选择“Window”,在其子菜单中选择“Preferences…”,如图3。

图3

在左边的树状菜单中选择“C/C++”->“Make”->“New Make Projects”,在右侧选择“Binary Parser”这一栏,然后在下面点选“PE Windows Parser”,并将其他选项取消选择,完成之后点击“OK”,如图4。

图4

由于在CDT中进行make操作的默认命令为“make”,而MinGW中用于make的程序为“mingw32-make.exe”,所以应将CDT中所有的默认“make”命令都改为“mingw32-make”。但是这样更改非常麻烦,所以这里提供一个投机取巧的方法,将“C:\MinGW\bin\mingw32-make.exe”复制一份副本,重命名为“make.exe”即可。

在Eclipse中,是以“Project”即项目为单位进行开发的,不能够对不属于任何一个Project的单个源文件进行编辑和编译,所以打开Eclipse IDE之后的首要任务是新建一个工程。以新建一个C++工程为例,点击菜单栏的“File->New->C++ Project”,如下图:

    

    在弹出的对话框中依次输入Project name(工程名),选择Project type(工程类型),然后点击“Finish”(完成)。Project type分为两种,“Executeble”和“Makefile project”,其中“Executeble”为Managed C++ Project,即自动编译的C++工程;而“Makefile project”是通过写makefile来手动编译的C++工程,新手建议使用自动编译的C++工程。这里我们选择了一个“Executeble”的“Hello World C++ Project”(Hello World示例工程)。如下图:

  

    

    新建工程后的IDE界面如下图,左侧为Project Explorer(工程浏览器),中间是Editor(代码编辑器),右边是Outline(大纲),下方的“Console”就是传说中的控制台。在自动编译的C++工程中,当代码发生更改并保存后,eclipse便会自动调用编译器对此文件进行编译,编译信息会在控制台中输出,如果出现编译错误,则在出错的代码的左边会出现小红叉。

   

   

    编译成功后,在Project Explorer中会出现编译后的二进制可执行文件,如MyProject.exe。若要运行此程序,则右键之->Run As(运行为)->Local C/C++ Application(本地C/C++程序)即可,运行时的标准输出将输出在下方的控制台中。如下图:

   

    以上便是一个简单的C++工程的新建、编辑和运行的步骤,C工程与其类似。我在下一篇中将介绍Eclipse+CDT+MinGW平台下的Debug方法与技巧。

Eclipse进行C/C++开发——Eclipse+CDT+MinGW的配置与使用详解的更多相关文章

  1. Eclipse IDE for C/C++ Developers和MinGW安装配置C/C++开发学习环境详解

    Eclipse IDE for C/C++ Developers和MinGW安装配置C/C++开发学习环境详解 操作系统:Windows 7 JDK版本:1.6.0_33 Eclipse版本:Juno ...

  2. VS 2013驱动开发 + Windbg + VM双机调试(亲测+详解)

    ------------VS 2013驱动开发 + Windbg + VM双机调试(亲测+详解)------------- WIN10已上线,随之而来的是VS2015:微软在 "WDK760 ...

  3. 移动开发必须要弄明白的问题】详解Eclipse转Android Studio

    2015-12-09 13:01:244264浏览3评论 AS出来一年多了,最近才从Eclipse转到AS,但我并不觉得使用Eclipse有多落后,它们都只是一个工具而已,哪个顺手就用哪个,用得好都能 ...

  4. windows下搭建eclipse关于python的开发环境及初始化参数配置

    1.安装jdk 因为eclipse是java开发的,运行eclipse程序需要安装jdk 安装jdk以后需要配置java_home环境变量 2.安装python2.7(比较简单,此处略) 3.下载ec ...

  5. Android开发重点难点1:RelativeLayout(相对布局)详解

    前言 啦啦啦~博主又推出了一个新的系列啦~ 之前的Android开发系列主要以完成实验的过程为主,经常会综合许多知识来写,所以难免会有知识点的交杂,给人一种混乱的感觉. 所以博主推出“重点难点”系列, ...

  6. iOS开发——开发实战篇&版本控制SVN和Git使用详解

     版本控制SVN和Git使用详解     公司的实际开发中,在天朝使用较多的还是SVN,因为SVN是集中式的,在天朝上班你们都懂的!     -----------------svn--------- ...

  7. 【IOS 开发】Object-C 入门 Xcode 环境详解

    作者 : 韩曙亮 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/38424965 一. Xcode 环境安装 与 工程创建 1. ...

  8. iOS开发从申请开发账号到APP上架的整体流程详解

    应公司要求,写一份文档从申请账号一直到APP上架的整体流程,下面进入正文. https://blog.csdn.net/qq_35612929/article/details/78754470 首先第 ...

  9. 微信小程序开发教程(八)视图层——.wxml详解

    框架的视图层由WXMKL(WeiXin Markup language)与WXSS(WeiXin Style Sheet)编写,由组件进行展示. 对于微信小程序而言,视图层就是所有.wxml文件与.w ...

随机推荐

  1. springMVC操作mongoDB增删改查

    下面是mongoDb简单的增删改查(新闻类) 附:query.addCriteria(Criteria.where("modelId").ne("").ne(n ...

  2. ASPxSpinEdit 控件的三元判断

    方法一:<dx:ASPxSpinEdit ID=" DisplayFormatString="c" Width="100px"></ ...

  3. Spark Streaming源码解读之JobScheduler内幕实现和深度思考

    本期内容 : JobScheduler内幕实现 JobScheduler深度思考 JobScheduler 是整个Spark Streaming调度的核心,需要设置多线程,一条用于接收数据不断的循环, ...

  4. [转载]:经纬度与WGS84坐标转换

    本代码实现在WGS84系统的大地坐标(BLH)和空间直角坐标(XYZ)的互相转换,符合标准语法,可直接使用 如下代码,输出为: WGS84:  -2175790.73969891    4461032 ...

  5. NHibernate系列文章一:NHibernate介绍

    摘要 NHibernate是一个成熟的开源的面向对象的.net映射框架.大量的实际项目中正在使用该框架.他是建立在ADO.Net基础之上.目前的版本是NHibernate 4.0.4.本系列文章都是基 ...

  6. 使用jna调用dll,jdk位数和dll位数的关系

    最近在学习jna,发现dll文件能能否成功调用取决于jdk位数. 32位jdk只能使用32位的dll,64位jdk只能使用64位的dll,否则位数不对应的话报的错是 "Exception i ...

  7. CentOS7服务器相关配置

    ====================查看CentOS版本==================== cat /etc/redhat-release ====================YUM更新 ...

  8. SQL SERVER 2008 字段值合并

    /** * 通过 FOR XML PATH 语句,可以将字段的值进行合并. **/ CREATE TABLE tb_child ( name ), hobby ) ) go INSERT INTO t ...

  9. SBT 构建scala eclipse开发

    scala eclipse sbt 应用程序开发 搭建Eclipse开发Scala应用程序的一般步骤 一.环境准备: 1.Scala : http://www.scala-lang.org/ 2.Sc ...

  10. 编程范式 episode 6 实现stack 栈功能_ to do

    //既然在这里开始,那就在这里结束. 实现stack 功能 ____coding _using subfunction to focus on the main aim of current func ...