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. 解决多网卡SNMP获取不到数据的问题

    前言 前几天,公司的某个平台突然访问不了,我以为是网站挂了,于是想连接服务器查看,谁知道连服务器都连不上,然后我尝试PING,结果一直PING不通,此时我有点慌了,但我的头脑还是保持清醒的,我马上连接 ...

  2. Linux网络常用指令

    5.1 网络参数设定使用的指令   ifconfig 查询 设定网络卡与 IP 网域等相关参数: ifup, ifdown 这两个档案是 script,透过更简单的方式来启动网络接口: route 查 ...

  3. 【转载】H264--1--编码原理以及I帧B帧P帧

    ---------------------- 前言 ----------------------- H264是新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面,我理解的他的理 ...

  4. sqlserver无法连接

    以下是我的检查信息及结果:1.telnet 192.168.1.100 1433 通过  telnet 116.3.15.198 1433 不通,提示“……无法打开连接,连接失败”的错误.2.通过端口 ...

  5. mysql分区查询

    SELECT *FROM INFORMATION_SCHEMA.partitions WHERE table_name='表名' and table_schema='数据库名'

  6. 遇到一个奇葩的问题,could not load the assembly file XXX downloaded from the Web

    在我这编译好好滴,发给客户那边居然不通过,报could not load the assembly file:///xxx.dll, 查阅了一些文档后,发现原来是文件的安全问题,是由于我把文件压缩打包 ...

  7. Linux内核分析第四周学习总结:扒开系统调用的三层皮(上)

    韩玉琪 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.用户态.内核 ...

  8. SQL时间戳的使用

    SQL时间戳的使用 一直对时间戳这个概念比较模糊,相信有很多朋友也都会误认为:时间戳是一个时间字段,每次增加数据时,填入当前的时间值.其实这误导了很多朋友. 1.基本概念 时间戳:数据库中自动生成的唯 ...

  9. [wechall] Time to Reset (Exploit, Coding, PHP)

    Time to Reset (Exploit, Coding, PHP) <?php $start=1453000000; $cstf="nipNlJ6ZQPuGQ3i90QUTP8J ...

  10. swift 定制自己的Button样式

    swift的UIButton类中有些公开方法可以重写,所以,如果想写出自己的UIButton,只要继承UIButton类,并重写相应的方法即可. 系统的UIButton可以添加图片,也可以添加标题,但 ...