最近嫌弃切换系统麻烦。用了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 settings\Cygwin\core  映射的时候实际是将/cygwin 映射为D:\configuration settings\Cygwin\core。也就是你的cygwin的安装路径。貌似eclipse只需要/cygwin的跟目录。其他的不需要

解释2、这个东西在我的eclipse4.3里没有找到。

注意:新建项目之后记得右键构建一下,否则无法运行。由于我的eclipse已经被汉化,所以我忘了英文版是啥。各位就翻翻字典吧。

eclipse和cygwin搭建C++环境的修正版本的更多相关文章

  1. adt-bundle更新eclipse,以及搭建android环境

    曾经开发一直去android官网下载adt-bundle的.里面已经包括了eclipse和android SDK,搭建android环境特别方便,仅仅须要3步:1.下载并安装jdk(也就是jar se ...

  2. Eclipse+Pydev +Django搭建开发环境时容易出错的几点

    1.注意安装的软件和系统的位数是否匹配. 2.安装Django框架的时候注意是否安装了setuptools工具.在Python中,安装第三方模块,是通过setuptools这个工具完成的.Python ...

  3. win7搭建python环境--同时安装版本2和版本3

    软件准备[以win7 64位系统为例] python2.x版本建议使用2.7.9或更新版本,因为该版本开始集成了setuptools和pip,这样省去了不少功夫 python2.7.9下载地址: ht ...

  4. 使用eclipse+tomcat搭建本地环境

    项目开发工具很多,这里简单介绍下使用eclipse+tomcat如何搭建本地环境. 安装开发工具如下: 1. jdk的安装参考 下载地址:http://pan.baidu.com/s/1sj9rVYX ...

  5. 在eclipse里配置Android ndk环境 适用于windows mac 和linux(转)

    在eclipse里配置Android ndk环境 适用于windows mac 和linux(转) 2012-02-27 13:02:16|  分类: android |  标签:java  prog ...

  6. eclipse里配置Android ndk环境,用eclipse编译.so文件

    做Android NDK开发时,c代码需要用ndk-build来进行编译,而java代码则需要用Android sdk编译. 编译c代码有两种方法: 一.写好c代码后,然后用cygwin搭建ndk-b ...

  7. Linux笔记 #07# 搭建机器学习环境

    环境: Debian 8.8 64位, 同样适用 win10 基本步骤: 安装 Python 安装必要的库 测试 一.安装 Python 延续之前的 搭建 Python 环境 选取折中版本 Pytho ...

  8. 开发工具--搭建python环境

    工具|搭建python环境 实现python2版本与python3版本的环境搭建. 正文 1.Python下载 官网: www.python.org 下载: ( 64位3.5.2Windows x86 ...

  9. 【FastDFS】小伙伴们说在CentOS 8服务器上搭建FastDFS环境总报错?

    写在前面 在[冰河技术]微信公众号的[分布式存储]专题中,我们分别搭建了单节点FastDFS环境和高可用FastDFS集群环境.但是,之前的环境都是基于CentOS 6.8服务器进行搭建的.很多小伙伴 ...

随机推荐

  1. java开发功能代码汇总

    多文件上传 http://smotive.iteye.com/blog/1903606 java 常用代码 Struts2 前后台(Action ,jsp)传值.取值 Action public Li ...

  2. UVA 10652 Board Wrapping(凸包)

    题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=32286 [思路] 凸包 根据角度与中心点求出长方形所有点来,然后就 ...

  3. replace empty char with new string,unsafe method和native implementation的性能比较

    1: class Program 2: { 3: static void Main(string[] args) 4: { 5: string s = File.ReadAllText(@" ...

  4. 【python自动化第三篇:python入门进阶】

    鸡汤: 多学习,多看书. 推荐书籍:<追风筝的人>,<林达看美国>,<白鹿原> 本节知识点 集合及其操作 文件操作 函数与函数式编程 递归 一.集合及其操作 集合( ...

  5. PHP判断变量是否为长整形的方法

    PHP判断变量是否为长整形的方法,可用于判断QQ号等,避免了int溢出的问题 <?php /** * 判断变量是否为长整数(int与整数float) * @param mixed $var * ...

  6. JSP版(utf8编码)的Ueditor百度文章编辑器配置以及使用说明

    二话不说,先上图: 我配置好的效果大致是这些功能:基本的文字编辑功能.图片上传功能.附件上传功能.百度/谷歌地图搜索截图.视/音频发布功能.这个插件是现今我用过觉得最舒服的编辑器,功能齐全强大,稍微修 ...

  7. Python数据类型转换

    Python数据类型之间的转换 函数 描述 int(x [,base]) 将x转换为一个整数 long(x [,base] ) 将x转换为一个长整数 float(x) 将x转换到一个浮点数 compl ...

  8. 在Delphi中实现HexToStr函数和StrToHex函数

    function TransChar(AChar: Char): Integer; begin '] then Result := Ord(AChar) - Ord(') else Result := ...

  9. SQL Server与Oracle对比学习:表的管理和组织

    http://blog.csdn.net/weiwenhp/article/details/8088979 我们知道数据库,顾名思义.最重要的东东就是管理数据,而数据在系统中主要是保存在表(table ...

  10. android86 监听SD卡状态,勒索软件,监听应用的安装、卸载、更新,无序广播有序广播

    * 添加权限 <uses-permission android:name="android.permission.RECEIVE_SMS"/> * 4.0以后广播接收者 ...