开发环境:Eclipse3.2、CDT3.1、MinGW5.1

1、Eclipse及CDT的安装
到Eclipse的官方网站http://www.eclipse.org上下载Eclipse。
安装CDT。CDT的全称是C/C++ DevelopmentTools,是使Eclipse能够支持C/C++开发的插件,保健康。进入CDT的官方网站,http://www/eclipse.org/cdt,然后选择一个镜像站点分别下载CDT。下载完成后,将这两个压缩包解压到Eclipse的目录中或通过插件方式安装。

<注意:>CDT的版本和Eclipse的版本有严格的对应关系,如果版本对应不正确就会安装不成功。
(也可以在安装完Eclipse后,通过Eclipse的软件更新功能安装CDT,具体步骤可以参考Eclipse的在线文档。)

3、安装MinGW
现在这个C/C++ IDE还不能开动,因为缺少了重要的部件。这个部件就是C/C++的编译器。在WindowsOS下我们可以选择MinGW。到MinGW的网站http://mingw.sourceforge.net上,下载MinGW,安装。安装后,要配置
4、添加环境变量

右键我的电脑->属性->高级->环境变量->系统变量中添加
MINGW_HOME=C:/MinGW
LIBRARY_PATH = %MINGW_HOME%/lib
C_INCLUDE_PATH = %MINGW_HOME%/include
在PATH变量的最后增加 ;%MINGW_HOME%/bin

5、配置MinGW
因为Eclipse预设用来编译的文件为 make.exe 但是 MinGw 安装后 make 的文件名是mingw32-make.exe
因此需要把 mingw32-make 改名为 make!

6、配置Eclipse

为了让CDT能够采用MinGW进行编译,需要在 Eclipse 中进行设定
Window->Preferences->C/C++->Make->NewMake Project->New Builder
->Binary Parser 取消 Elf Parser 改选 PE WindowsParser

还有一个问题需要注意,cdt的一个问题,在对c++文件建立indexer时会在75%的时候卡住,而且cpu占用率通常都是100%,知道的唯一的解决办法是将indexer功能关闭 Window->Perferences->C/C++-->Indexer把Apply indexer to all projects now前面的对号钩掉。

7、创建、编译C/C++工程

新建项目->Standard Make C++ Project->填写项目名HelloC,finish。

在项目下创建"hello.cpp“文件

  1. /*
  2. * hello.cpp
  3. */
  4. #include <iostream>
  5. using namespace std;
  6. int main () {
  7. // Say Hello five times
  8. for (int index = 0; index < 5; ++index)
  9. cout << "HelloWorld!" << endl;
  10. char input = 'i';
  11. cout << "To exit, press 'm'" << endl;
  12. while(input != 'm') {
  13. cin  >> input;
  14. cout << "You just entered " << input
  15. << " you need to enter m to exit." << endl;
  16. }
  17. exit(0);
  18. }

再创建makefile文件

  1. all: hello.exe
  2. clean:
  3. rm hello.o hello.exe
  4. hello.exe: main.o
  5. g++ -g -o hello hello.o
  6. main.o:
  7. g++ -c -g hello.cpp

注意,makefile里的行首缩进用的是Tab而不是空格。如果编译时提示 No separator...就是这里有问题。

打开Window->Show View->Make Targets视图,右键Add Make Target,Target Name填compile,点击Create创建成功。

在Make Targets视图中,双击compile执行成功,在项目HelloC下会生成hello.exe文件。     --done.

常见问题:

1、运行时出现:“launch failed no binaries” 错误。

2、build project时出现“Error launching builder (make -k all )”

3、CDT插件安装完毕后,在Eclipse新建项目向导中无法找到C、C++项目。

在网上看到好多朋友在使用Eclipse+CDT时会出现上面三个错误,我在最初安装时也出现过,按照我这篇文章一步步做的话,前两个错误偏会迎刃而解。而第三个现象是由于CDT版本与Eclipse版本不匹配,更换合适的CDT版本,问题便会解决。

Eclipse配置C/C++开发环境的更多相关文章

  1. JNI之—— Eclipse配置C/C++开发环境

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46622173 开发环境:Eclipse3.2.CDT3.1.MinGW5.1 1. ...

  2. 基于Eclipse的Hadoop应用开发环境配置

    基于Eclipse的Hadoop应用开发环境配置 我的开发环境: 操作系统ubuntu11.10 单机模式 Hadoop版本:hadoop-0.20.1 Eclipse版本:eclipse-java- ...

  3. 在windows下用eclipse + pydev插件来配置python的开发环境

    在windows下用eclipse + pydev插件来配置python的开发环境 一.安装 python 可以到网上下个Windows版的python,官网为:https://www.python. ...

  4. Eclipse平台下配置Go语言开发环境(Win7)

    <Go语言编程>中写到:“从功能和易用性等方面考虑, Eclipse+GoEclipse.LiteIDE这两个环境在所有IDE里面是表现最好的”,所以笔者打算采用Eclipse+GoEcl ...

  5. Spark:利用Eclipse构建Spark集成开发环境

    前一篇文章“Apache Spark学习:将Spark部署到Hadoop 2.2.0上”介绍了如何使用Maven编译生成可直接运行在Hadoop 2.2.0上的Spark jar包,而本文则在此基础上 ...

  6. [Android] 环境配置之基础开发环境(SDK/Android Studio)(转)

    [Android] 环境配置之基础开发环境(SDK/Android Studio)   博客: blog.csdn.net/qiujuer 网站: www.qiujuer.net 开源库: Geniu ...

  7. 搭建Eclipse、Resin Web开发环境

    搭建Eclipse.Resin Web开发环境 一.当然是安装java开发环境 参看: Java环境的搭建 http://www.cnblogs.com/ghj1976/archive/2010/04 ...

  8. Android SDK +Eclipse+ADT+CDT+NDK 开发环境在windows 7下的搭建

    Android SDK+Eclipse+ADT+CDT+NDK 开发环境在windows 7下的搭建 这几天一直在研究 Android SDK  C/C++平台的搭建,尽管以前有成功在Windows ...

  9. 使用Eclipse搭建C/C++开发环境(转)

    使用Eclipse搭建C/C++开发环境  文章出自:http://www.cnblogs.com/liuxianan/archive/2013/01/15/2861196.html 说明:网上有很多 ...

随机推荐

  1. eclipse 使用gradle构建系统时候报错

    今天启动eclipse后,昨天运行正常的gradle项目报错,无法进行编译,错误信息如下: Unable to start the daemon process. This problem might ...

  2. find in linux

    find命令的作用是在目录中根据文件名搜索文件find 列出当前目录及其子目录的所有文件和文件夹的完整路径.find -name Help.java 在当前目录及其子目录中搜索文件名为Help.jav ...

  3. homework-附加题:第12章基本数据类型阅读总结

    基本数据类型是构建其他所有数据类型的构造块,本人认为这部分是计算机编程的基础,值得得到大家的注意. 首先,在本章中作者提到了避免使用magic number.使用magic number这种做法是极其 ...

  4. jquery easyui防止超出浏览器边界

    var easyuiPanelOnMove=function(left,top){ if(left<0){ $(this).window('move',{ left:1 }); } if(top ...

  5. Linux df 命令用法示例

    介绍: Linux中df命令可以用来显示目前在Linux系统上的文件系统的磁盘使用情况统计.这些工具可以方便地知道哪些文件系统消耗多少内存.此外,如果被拾起,并且提供一个特定的文件名作为df命令的参数 ...

  6. Oracle创建dblink报错:ORA-01017、ORA-02063解决

    Oracle环境:oracle 10.2.0.1 创建的 public dblink 连接oracle 11.2.0.3 ORA-01017: invalid username/password; l ...

  7. ntdll.dll函数原型

    /*NTDLL Base Functions*/NTSYSAPI NTSTATUS NTAPI NtAcceptConnectPort( OUT PHANDLE PortHandle, IN PVOI ...

  8. 【Java】Treeset实现自定义排序

    两个类,一个学生类,含姓名和出生日期两个属性:还有一个学生排序类,重写compare函数,自定义排序规则是先比较出生日期,如果相同再比较姓名字母 package birthday; import ja ...

  9. union all 简单用法

    select Y.ID,sum(cast(Y.m as int)) as hefrom(select top 10 a.ID,a.AlarmSource as m from dbo.AlarmInfo ...

  10. 添加zlib压缩步骤 OpenSSL

    1.Link Binary With Libraries 中添加 libz.dyllb 2.复制OpenSSL(libssl.a & libcryto.a & NSData+Cocoa ...