本文共 4545 字,大约阅读时间需要 15 分钟。
关键词:eclipse;window下;c/c++;MinGW编译器;gdb调试工具;cdt插件;launch failed. binary not found;makefile;Eclipse IDE for C/C++ Developers 。。。
想在eclipse上写c,研究了两天,网上的资料多是多,duo是重复和无用的哎!弄来弄去欲哭无门呀!不过最后虽然不尽人意,还是搭起了c开发环境。研究查找的大体过程与上面关键词顺序类似。再次花点时间给大家分享一下,希望对你有所帮助。
首先查到了一篇好文章,已被我转载()。java环境搭建不用说,我用的是一个javaEE版本的eclipse,在它上面搭建c语言开发环境。按着上面转载的文章所言下载和安装了MinGW(你也可以在我的资源里下载mingw-get-inst-20120426.exe,它是MinGw编译器的在线安装程序,刚从官网下的,既可以可在安装时选择安装默认版本,也可安装时选择最新版本)。然后先不必管他说的gdb(这个在我的资源里也分享给大家了)。
在eclipse中安装cdt插件,我用的是link方法:即把插件解压后放到你eclipse的文件夹下,同时在eclipse的文件夹下建立文件夹links,再在其中建立txt文件-内容为path=D:\\eclipse-jee-galileo-SR2-win32\\eclipse\\cdt-master-6.0.2(根据你的插件放的位置写这个路径)。再把该文件的文件名改为cdt.link。好了!重启eclipse。
判断eclipse是否安装成功的标志是在file->new->project中看看有没有C/C++的工程向导。如果有这个工程向导,那么就证明你的安装是正确的,安装成功了,否则就需要再去摸索问题所在。
到这里大概结束了吧,,,哎,似乎是刚开始
配置系统环境变量:
“我的电脑”右击->属性->高级->环境变量,在path后面加上“;c:\mingw\bin”;在建立变量WXWIN,值为C:\MinGW
配置eclipse中的环境变量:
PATH:为了找到gcc,make等的路径 C:\Program Files\MinGW\bin
LIBRARY_PATH :该环境变量可设置为一个或多个目录名字列表,连接程序会搜寻该目录,以查找特殊连接程序文件,和由 -l (字母 l )命令行选项指定名字的库,主要是.o的文件路径,如果报类似.o的文件找不到,那就可能这个变量设置的问题 C:\Program Files\MinGW\lib;C:\Program Files\MinGW\lib\gcc\mingw32\3.4.5 C_INCLUDE_PATH:编译C程序时使用该环境变量 C:\Program Files\MinGW\include CPLUS_INCLUDE_PATH:编译C++程序时使用该环境变量 C:\Program Files\MinGW\include\c++\3.4.5;C:\Program Files\MinGW\include\c++\3.4.5\mingw32;C:\Program Files\MinGW\include\c++\3.4.5\backward;C:\Program Files\MinGW\include
报错了launch failed. binary not found !!后来还有Program file not Specified!!等等。。
接着查,接着研究,总之,各种查各种配。配了半天还是不好!
后来看到这么一段:
1,先装好JAVA
2,装好Eclipse3.32+MinGW1 3,打开CDT包把plugins和features拷到Eclipse相应的目录里 4,把Eclipse的configuration目录下的org.eclipse.update删了 5,启动Eclipse,现在可以建立C/C++工程了 6,现在建立你的C/C++工程 7,编写好你的源代码 8,在Project的Properties新建一个Builder(Project→Properties选择Builder标签→New,双击Program)
9,在MAIN标签(不用点击,默认第一个就是)的LOCATION输入你MINGW的MAKE路径,如C:\MinGW\bin\mingw32-make.exe
在WORKING DIRECTORY输入你PROJECT的MAKEFILE文件所在的目录,如D:\workspace\test
点APPLY更新进去,一直点OK退回编辑界面 10,建立文件makefile,不用加后缀名,输入 all(你设置的标签名): gcc -o 你的程序名 你的源代码名.c 注意:g++前面是用tab而不能用空格。上面编译的是C,编译C++要用g++ -o HelloHello.cpp
设定Make Targets,Windows->Show View->Make Targets。在Make Targets视窗中按下右鍵,选择Add Build Target,Target Name输入:编译,Make Target输入:all(你
设置的标签名)。双击编译即可完成编译。
11,现在Run你的工程吧! 8~10为重点所在,请大家注意
按着上面这段说的配好了,呵呵算是可以编译了,打开工作空间的对应文件,其中有编译的文件可以执行,,,,,但可惜不能集成到在eclipse里。。若有错误,eclipse里的控制台也会报错,,,,但还是不爽呀,,这种集成环境也太差了吧。。。。
在此,再次向大家请教。。。。如果你有好的方法,请留言。谢谢!!!!
进入我现在搭成的eclipse上c语言开发环境
经过思考查找给大家几段网友的话(望都你理解有助):关于MinGW(这个真的需要好好研究一下。发个链接)。关于makefile建议大家再看看百度百科和互动百科吧!
网友a:
MinGW相比CygWin/gcc来讲,更加贴近win32。因为它几乎支持所有的Win32API。它所
连接的程序,不需要任何第三方库即可运行。
CygWin/gcc,其实这是两个东西。CygWin是一个让Windows拥有Unix-like环境的软件。而gcc就是安装在CygWin上的编译器。
CygWin/gcc与MinGW的最大区别在于:使用CygWin/gcc可以在Windows下调用unix-like的API,(如fork,spawn,signals,select,sockets等)。也就是说Cygwin是运行在
Windows下的,但是她使用的是Unix-like系统的函数和思想。由于这个区别,导致的
结果就是用CygWin/gcc编译出来的程序可以无缝的运行在*nix环境下。但是如果调用
了unix特有的API函数,在windows环境下不能正常运行,如果想在windows下正常运行
的,就必须依赖cygwin1.dll,速度上会有些影响。
而用MinGW编译出来的程序,如果源代码里面调用了unix环境的API,则MinGW会把这些对UNIX的API调用翻译成win32下等价的形式。同时这个程序是不能在windows下运行的
。
说白了,如果你是想在windows环境下开发linux运行程序,那么CygWin/gcc是你的不二之选。
而如果你想开发的是windows运行程序,并且追求速度,那么二者相比而言,MinGW是更好的选择
我是一个初学C的,也不算初学了,但是打算以后好好学。
不知道上面说的对不对。
网友b:
我没有用过这两个工具,只是有点想选择一个来用,于是在网上比较一下两者有啥不
同,然后选一个适合自己的。过程中,我发现网上一份文章可能被多个人转载,被多
个人稍微修改后当成自己的随笔写出,误认不浅。
说一点,什么cygwin编译的程序可以无缝在linux上运行,根本就不能这么理解。cygwin官方的一个定义是Cygwin is not a way to run native linux apps on
Windows. You have to rebuild your application from source if you want it to
run on Windows.
翻译过来就是
cygwin不是让linux程序能在windows上运行的方法,如果你想要让linux程序能在windows运行,那么你只有用cygwin来重新编译一下源文件。
这句话完全反驳了无缝运行在linux的说法。就是说你在linux上编译的elf程序不能直接拿到cygwin上运行,同样,你用cygwin编译的程序也不是linux的elf格式,而是exe
格式,exe是无法在linux上运行的。
cygwin和mingw都是为用户提供在windows操作系统使用GNU工具的方法,使得在
windows上可以编译为linux写的c源代码并运行(让你可以用signal等linux才有的api)
。真正的不同在于
1,cygwin大,mingw小 2,cygwin编译后的exe需要cygwin1.dll作为支持,而mingw不需要就可以直接运行,因为有中间层所以cygwin慢,mingw快。
3,cygwin包含的内容更全面,能编译通过的linux源文件更多,mingw的min是minimalist所以能编译通过的更少。但,不是全部,就是说别指望你可以把任何为
linux写的源代码在cygwin或mingw编译通过并运行。
好了好了不说废话了:最后了解到了
Eclipse IDE for Java Developers 是为java开发的
Eclipse IDE for Java EE Developers 是为J2EE开发的 Eclipse for RCP/Plug-in Developers 是为RCP和插件开发的 Eclipse IDE for C/C++ Developers 是为C/C++开发的 Eclipse Classic 3.3.2 是它的经典版本 SDK的中文包网上有很多,你可以去搜搜!你要是刚开始学用第一个,公司开发用第二个,下面两个用的较少
class不是SDK SDK是software develop kit
JDK 是Java software develop kit 即Java SDK
你要可以到Eclipse的官方网站下载。
我这样做了(具体见)
1.我在eclipse官网上下了一个eclipse-cpp-galileo-SR2-win32
2.又按说明重装了一下MinGW(你也可以在我的资源里下载mingw-get-inst-20120426.exe,它是MinGw编译器的在线安装程序,刚从官网下的,既可以可在安装时选择安装默认版本,也可安装时选择最新版本)。
最后给俩链接