有个朋友要我帮忙跑一个C程序而我现在主要用java,电脑上也就没有C语言的编译和开发环境,在学习java的这段期间,接触到了Eclipse这个强大的IDE,用惯了。就为调试一个程序,去安装一个VS觉得太不值当了,而且也好奇Eclipse能否通过插件构建一个C/C++开发环境???通过看网上的博文,的确有不少人实现了,但是我按照他们的方法进行构建,中途出现了很多问题,通过自己摸索,最终还是顺利构建成功了。每个人的情况都不一样,为了让大家多一份参考选择,因此写下此博文:

前提:你下载的Eclipse不是 Eclipse for C/C++;

目标:让你的Eclipse既可以开发JAVA也可以开发C/C++;

1、需要软件:

  • jdk1.7(去官网下)
  • Eclipse(我用的是luna这个版本的)
  • Eclipse C/C++ Developmer Tools SDK插件
  • MinGW(下最新版就好了)

 2、构建步骤:

jdk和Eclipse的安装以及环境变量的配置这里就不赘述了。在装好jdk和Eclipse的前提下:

  • 安装CDT插件:打开Eclipse—>Help—>Install New Software...,在打开的窗口中点击Add,弹出的对话窗中(Add Repository)中,Name框里输入cdt;Location框输入http://download.eclipse.org/tools/cdt/releases/galileo回车确认。之后会自动将插件下好并安装好。
  • 安装MinGW:下载网址:http://www.mingw.org/download.shtml;打开页面后直接点击Download mingw-get-setup.exe (86.5 kB),下载好并进行安装,要注意安装路径不能含有空格,这个路径也就是最后装好的MinGW的路径,我的安装路径为D:\MinGW;在bin文件下下面有一个mingw-get.exe;打开,只要选择安装mingw32-base、mingw32-gcc、mingw32-gcc-g++、mingw32-make这几个就可以了,单个选中右键Mark for Installation,全部标记好后点击右上角的Installation选择Apply Changes。会自动下载安装的,安装好可以在bin文件夹下面找到一个mingw32-make.exe将其改名为make.exe。然后将MinGW下面的bin加到系统变量Path中,如果Path变量不为空则先在最后输入一个分号再将MinGW下面的bin路径粘到后面(如我的路径为D:\MinGW\bin)。装好后可出现这些提示即成功。
  • 设置Eclipse:为了使CDT能够使用 MinGW来进行C/C++程序的编译工作, 我们需要在Eclipse中进行如下设定:Window—>Preferences—>C/C++—>New CDT project wizard—>Makefile Project 找到 Binary Parser 取消 Elf Parser 改选 PE Windows Parser这样,开发环境就建立好了。

3、问题及解决方案:

  • 在创建一个C/C++工程的时候Toolchains里面没有MinGW GCC,甚至左边的Project type里连Executable都没有只有Makefile project时,请尝试一下将下面Show project types and toolchains only if they are supported on the platform前面默认的勾选去掉。
  • 创建好的工程里面编写一个C程序,会发现unresolved inclusion: <stdio.h> 等提示,那是以为函数库没有引入。先选择Window->Preferences->C/C++->Environment,在右边点击Add,Name:C_PATH(Name的值是可以任意取的);Value:D:\MinGW\include(即MinGW下面的include文件路径),确认;然后选择Project->Properties->C/C++ General->Path and Symbols在右边选择GNU C然后点击Add...在弹出的对话窗中点击Variables...即可选择我们上一步自己命名的Name值了,将其添加。

测试一段C程序:

  1. 1 #include <stdio.h>
  2. 2 #include <stdlib.h>
  3. 3
  4. 4 int main(void){
  5. 5 puts("!!!hello,world!!!");
  6. 6 return EXIT_SUCCESS;
  7. 7 }

按Ctrl+b进行编译,右键选择Run as进行运行得到结果如下:

最后,希望我写的这些真的能对大家在Eclipse构建C/C++开发环境起到一定的帮助!!!

使用ECLIPSE+MINGW搭建C/C++开发环境的更多相关文章

  1. 如何在Eclipse中搭建MyBatis基本开发环境?(使用Eclipse创建Maven项目)

    实现要求: 在Eclipse中搭建MyBatis基本开发环境. 实现步骤: 1.使用Eclipse创建Maven项目.File >> New >> Maven Project ...

  2. Eclipse上搭建Spring的开发环境

    一.安装Spring Tool Suite插件 如图: 点击Finish之后等待安装,安装完之后弹窗点击yes重启Eclipse,重启后显示如下界面: 二.搭建Spring开发环境 1.导入jar包到 ...

  3. windows+CMake+mingw 搭建c c++开发环境

    layout: post title: "windows+CMake+mingw 搭建c c++开发环境" date: 2018-03-30 22:23:06 tags: wind ...

  4. 【Hadoop学习之五】win7+Eclipse+hadoop3搭建本机开发环境

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 拓扑: 知识准备: 1.eclip ...

  5. Windows下使用 Sublime Text + MinGW 搭建C/C++开发环境

    下载并安装 Sublime Text 点击此处从官网下载适合自己的Windows系统的Sublime Text 下载好后双击进行安装(一路next就好啦) 下载 MinGW 点击此处下载MinGW 下 ...

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

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

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

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

  8. 【转】Eclipse和PyDev搭建完美Python开发环境(Ubuntu篇)

    原文网址:http://www.cnblogs.com/Realh/archive/2010/10/10/1847251.html 前两天在Windows下成功地搭好了一个Python开发环境,这次转 ...

  9. Eclipse和PyDev搭建完美Python开发环境(Windows篇)(转)

      摘要:本文讲解了用Eclipse和PyDev搭建Python的开发环境. 十一长假在家闲着没事儿,准备花点时间学习一下Python. 今儿花了一个下午搭建Python的开发环境,不禁感叹————开 ...

随机推荐

  1. offsetTop和scrollTop的差别

    近期想写个组件,结果被这两个属性搞的有点晕,查了下文档和资料,对这两个属性总结例如以下: 一直以来对offsetLeft,offsetTop,scrollLeft,scrollTop这几个方法非常迷糊 ...

  2. innobackupex --slave-info参数的含义和适用场景

    http://blog.itpub.net/28916011/viewspace-1969135/       我有个问题一直没弄明白,就是innobackupex里面的--slave-info这个参 ...

  3. node.js 浏览器中输出 “hello world”

    前段时间花了几个小时,在command面板输出了“hello world”,今天就来说说怎么在浏览器上输入一个地址,然后页面输出“hello world”. 首先要搭建一个基础的 HTTP 服务器 一 ...

  4. 文件和目录之symlink和readlink函数

    symlink函数创建一个符号链接. #include <unistd.h> int symlink( const char *actualpath, const char *sympat ...

  5. 聊聊 iOS 开发中的协议

    前言 何为协议,简单来说在OC中我们使用关键字@protocol可以声明一个协议,并在协议中添加多个属性.方法供于遵循者实现,从某个角度上来说,这是一种不同于category机制的category.在 ...

  6. css实现响应式全屏背景

    利用css中 background-size:cover  填充整个viewport 注意: 一张背景图像素5000px*5000px在pc端 缩放都基本满足要求 不会出现模糊失真: 但是在移动端使用 ...

  7. php使用mysql_query查询超大结果集超内存的解决方法

    再使用mysql_query查询超大结果集的时候会出现超出内存限制的致命错误,这是因为mysql_query采用的是查询全部结果然后把结果集全部缓存到内存中的方式. mysql的查询还提供了另外一种查 ...

  8. big data vs HPC

    When I tried some SIMD optimization in large-scale simulation(HPC), it is so difficult to implment. ...

  9. [转].net 调用oracle存储过程返回多个记录集

    本文转自:http://www.netwinform.com/articleinfo.aspx?id=17 存储过程: CREATE OR REPLACE PROCEDURE p_query_cs ( ...

  10. 关于Eclipse中的egit的常规使用和模板

    修改bug的模板 要提交的comment信息.TDI-31426 fix bug: if get studio license use : Import License :after get lice ...