最近嫌弃切换系统麻烦。用了cygwin作为netbeans下C++的环境继续学习。我学的很渣,就不卖弄了。
网络上有很多这样的文章。经过对比和实验发现一个深坑。教程部分还是跟其他的一样,重点部分红字做出解释。附录如下:
1.下载cygwin,默认的情况下Cygwin没有选择C++开发所需要的包,在安装时必须选中 (有一些基础包就不要动了让他默认就可以):
gcc, gcc-core, gcc-g++, gcc-mingw-core, gcc-mingw-g++, make , gdb, binutils
2. 安装好后,需要把Cygwin加入Windows环境变量。环境变量路径是取到cygwin的bin目录。
因为gcc 和g++ 不能从windows cmd中直接执行, 可以通过直接在cmd中直接运行g++, gcc, 显示“访问被拒绝” (access denied), 进入cygwin安装目录/bin下检查g++.exe, gcc.exe是否只有1k大小,如果是,那么文件是符号链接,那么把文件重命名一下(备份)。 然后把g++-3.exe(或者g++-4.exe)拷贝一份,重命名为g++.exe。 把gcc-3.exe拷贝一份,重命名为gcc.exe。 将cygwin安装目录/bin加入到环境变量PATH中。好了,开个cmd命令行窗口,分别试一下gcc -v , make -v 命令。
3.下载Eclipse CDT插件 地址:http://www.eclipse.org/cdt/downloads.php
4. 配置路径映射
eclipse中调试时,由于GDB使用的unix格式的路径,而eclipse使用的是windows路径,导致找不到匹配的代码, 需要手工设置: In Eclipse in Preferences->C/C++->Debug->"Common Source Lookup Path" add new "Path Mapping". 把linux的路径映射到windows的路径: 比如 /cygwin/c 映射成 C:/(解释1)
5.选中编译器
在C++项目右键Properties->C/C++ Build->toolchain 中确定 Current toolchain = Cygwin Gcc, Current builder = Gnu Make Builder,
Used tools 有: GCC Assembler, GCC Archiver, Cywgin C++ Compiler, Cywgin C Compiler, Cywgin C Linker, Cywgin C++ Linker。
最后将Display compatible toolchains only选中。 (解释2)
相关解释:
解释1、映射问题示例中是错误的。比如我的cygwin的安装路径是:D:configuration settingsCygwincore 映射的时候实际是将/cygwin 映射为D:configuration settingsCygwincore。也就是你的cygwin的安装路径。貌似eclipse只需要/cygwin的跟目录。其他的不需要
解释2、这个东西在我的eclipse4.3里没有找到。
注意:新建项目之后记得右键构建一下,否则无法运行。由于我的eclipse已经被汉化,所以我忘了英文版是啥。各位就翻翻字典吧。