最近一直在弄一些Linux下的环境开发。不过还是一样被抓狂。因为自己的电脑都是Windows系统,所以还是尽量想让工作都在Windows平台下完成。于是我又开始鼓捣cygwin这个东西。不过这次下了最新版本的cygwin1.7,gcc就出现问题了。首先是我的Eclipse的toolchain
最近一直在弄一些Linux下的环境开发。不过还是一样被抓狂。因为自己的电脑都是Windows系统,所以还是尽量想让工作都在Windows平台下完 成。于是我又开始鼓捣cygwin这个东西。不过这次下了最新版本的cygwin 1.7,gcc就出现问题了。首先是我的Eclipse的toolchain无法识别cygwin gcc,只能识别到的mingw gcc。然后是直接从cmd.exe进入控制台之后,即便PATH设置了cygwin/bin,也无法调用gcc和g++,现实都是Access denied。但是如果在cygwin的bash里面进入,就没有问题。
最后,还是谢谢Google,让我找到了这个问题的根本:http://www.cygwin.com/ml/cygwin/2009-03/msg00046.html . 原来,本质问题是,cygwin1.7采用了Linux下的link方式。也就是让一个文件和另外一个文件关联。而DOS无法识别这种关联,所以,它就不知道gcc到底是gcc3还是gcc4哪个。
如果不是输入gcc,而是gcc-3或者gcc-4,那么就ok了。g++也相应是g++-3或者g++-4。
不过,这样一来,cygwin外部开发环境要识别gcc和调用gcc就很麻烦了。我装最新的Eclipse+CDT是整死也识别不出这个cygwin gcc。而Code::Blocks相对好一些,即便不能识别,你也可以访问去build option里面修改gcc.exe为gcc-3.exe。似乎Eclipse+CDT里面也可以修改,现在不记得了。但是,这种手动修改,毕竟让人感觉 起来很不爽。
最后还是总结一下,说到在windows平台调试各种Linux程序的方法。
大概总结了这么多。希望对大家在Windows上开发,调试Linux程序有所帮助。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号