eclipse中配置c++开发环境 Eclipse + CDT + MinGW

时间:2023-03-08 17:27:56
eclipse中配置c++开发环境 Eclipse + CDT + MinGW

转自eclipse中配置c++开发环境
Eclipse + CDT + MinGW



基本框架:Eclipse + CDT + MinGW

背景知识:

CDT:CDT 是完全用 Java 实现的开放源码项目(根据 Common Public License 特许的),它作为 Eclipse SDK 平台的一组插件。这些插件将C/C++ 透视图添加到 Eclipse 工作台(Workbench)中,现在后者可以用许多视图和向导以及高级编辑和调试支持来支持 C/C++ 开发。如下图,安装了CDT插件的eclipse可以在file => new => project中看到C/C++的选项。

eclipse中配置c++开发环境 Eclipse + CDT + MinGW

MinGW (Minimalist GNU for Windows):MinGW是一个*软件,可以将C/C++撰写的原始程序编译为 Windows 环境下的可执行文件。它所使用的编译器(如C语言的gcc或C++语言的 g++等)是由 GCC 移植而来。GCC 的意思是 GNU 编译器聚集(GNU Compiler Collection),这个聚集中包括 C、C++、Objective-C、Fortran、Java、Ada等语言的编译器及相关的函式库等必要的档案。

具体步骤

1.      安装JRE,这个不多讲,用过eclipse的人都知道。

2.      安装eclipse。Eclipse不用安装,下载完成后就可以直接使用。如下图,记得下载官网上那个eclipse ide for c/c++ developers,它针对C++开发,本身已经集成了CDT插件。下载地址:http://www.eclipse.org/downloads/

eclipse中配置c++开发环境 Eclipse + CDT + MinGW

3.      安装mingw。下载地址:http://download.csdn.net/detail/lijing_08scut/3738630

下载后解压,双击MinGW-5.6.1-exe就可以安装。安装时有个安装选项,如果不知道选哪个,直接选择Full就可以啦。

eclipse中配置c++开发环境 Eclipse + CDT + MinGW

4.      配置环境变量(path、LIBRARY_PATH 、C_INCLUDE_PATH 、CPLUS_INCLUDE_PATH)。

先说一下为什么要配置环境变量。Eclipse会调用MinGW的gcc和g++编译C\C++程序,所以我们必须指出MinGW是安装在什么位置的,这样Eclipse才能找到。

MINGW_HOME=D:/MinGW

LIBRARY_PATH =%MINGW_HOME%/lib

C_INCLUDE_PATH = %MINGW_HOME%/include

CPLUS_INCLUDE_PATH=%C_INCLUDE_PATH%/c++/3.4.5;%C_INCLUDE_PATH%/c++/3.4.5/mingw32;%C_INCLUDE_PATH%/c++/3.4.5/back

5.      修改MinGW32-make.exe。

Eclipse编译程序时会用到make.exe,而MinGW安装后bin目录下默认的是MinGW32-make.exe。所以我们只有把MinGW32-make.exe复制一份,重命名为make.exe即可。

6.      测试开发环境。

如下图,新建一个Helloword的工程,编译,运行,就可以看到结果。

eclipse中配置c++开发环境 Eclipse + CDT + MinGWeclipse中配置c++开发环境 Eclipse + CDT + MinGW

查看helloworld的属性可以看到,设置的环境变量全部反应到了eclipse的include和lib的选项上。

eclipse中配置c++开发环境 Eclipse + CDT + MinGW

总结

因为eclipse已经集成了CDT,所以整个配置过程很简单。其中第4、5步是关键。如果环境变量配置不好,就会找不到iostream头文件;如果MinGW32-make.exe不修改成make.exe编译文件时,cout、endl会无法解析。

参考文档:

1.      http://blog.csdn.net/wj_1986/article/details/6562972

2.      http://my.oschina.net/huangsm/blog/38076