本篇文章转自 CSDN blog,转载请注明出处!

原文地址:

http://blog.csdn.net/liquanhai/article/details/6618300

引子:竟然可以用Code::Blocks来打开、编译、调试VC 6.0的项目,感觉很神奇,通过配置也让我们更进一步了解VC++ 6.0的编译器,连接器,调试器。好多兄弟问到要是能支持最新的VS2008和VS2010就好了,其实Code::Blocks已经配置好我们习惯的编译器的IDE环境了,假如我们用VS2003---VS2010,都可以不用配置了。只是因为VC++6.0的不在默认之列,所以才摸索出一套切实可行的方案出来。才先截个图给大家看看Code::Blocks支持和已经配置好的编译器支持列表吧(VC++6除外),因为我用的版本是Code::Blocks 10.05,所以VS2010没有加进去,之后的版本已经加好了:

一直在找寻VC++6.0流行的原因,在计算机界日新月异的发展下,一个很古老的编译器,能风靡程序界13年自然有其制胜法宝。自己感觉原因有下面原因:

①  启动速度快,占内存小;      ②   体积轻巧和生成的文件小;      ③  编译速度快;

VC++6.0版本作为经典,很难被取代。但是目前比较热的编程工具无疑要数Code::Blocks和CodeLite。下面仅说Code::Blocks的特点:

Code::Blocks免费开源(我们可以直接下载到其源代码),启动速度快,块头小,功能多,支持语法彩色醒目显示,支持代码完成,支持代码折叠,支持代码格式化,可以配置不同的编译器,来编译常见的工程模板(VC类,QT类一应俱全),插件的功能丰富。最喜欢的还是里面类似notepad++的双击一个变量,整个文件里面这个变量都高亮显示。总之有无数的理由来试一下Code::Blocks。

听说Code::Blocks竟然可以取代VC6.0,或者说VC6.0下面的工程可以直接在Code::Blocks内修改编译,调试。感觉很神奇,连着一周翻看了好多Code::Block的帖子。终于配置成功了。下面说一下具体的配置要求:

三个工具要安装分别是:① Code::Blocks 10.05版本 ②VC ++ 6.0 (为什么要装VC6主要是想使用里面的编译器 cl.exe,链接器 link.exe, 资源编译器 rc.exe, Microsoft 程序维护实用工具nmake.exe)  ③ windebug 6.7.005(这个最重要,要用到安装目录下的调试器cdb.exe)

(1)安装Code::Blocks 10.05 ,很简单就是下载完后一路Next下去。官方网站安装指引http://wiki.codeblocks.org/index.php?title=Installing_the_latest_official_version_of_Code::Blocks_on_Windows

无幻兄弟给出的中文安装指引http://blog.csdn.net/akof1314/article/details/6603177

(2)配置VC++6.0 的编译器,链接器,调试器  网站给出的英文指引http://wiki.codeblocks.org/index.php?title=Integrating_Microsoft_Visual_C_6_with_Code::Blocks_IDE

配置调试器、链接器、资源编译器的路径:

下面重点讨论调试器windebug 6.7.005的安装:

安装完后记录下路径C:\Program Files\Debugging Tools for Windows将其添加到toolchain excuteables-->Additional path's里面,还有在Compiler Settings,勾选/MD和 /ZI两项

配置调试器:

配置编译器开关

打开工程:

最后的调试效果:

**********************************************************************************************************************************************

在csdn上看到的这篇文章,大兴奋,赶紧照着步骤一步步做了下,并用VC6.0新建MFC应用程序,然后导入至Code::Blocks中,编译后运行效果如下:

VC++6.0 IDE的工程用Code::Blocks来打开、编译、调试终极配置方案的更多相关文章

  1. Code::Blocks 免安装版本下载及配置

    在编程的时候选择一款好用的IDE非常重要,对于初学者或需要开发项目的程序员来说更为重要,众多的IDE中 Code::Blocks 是一个不错的选择.Code::Blocks开源.版本多,并且还有免安装 ...

  2. VC++ 6.0创建MFC工程时的初级备要点(二)

        在看到一个MFC工程时,可能根据上一篇文章已经知道了哪些是重要的,那些是在创建工程的时候已经被初始化的!!下面介绍一下在看代码的过程的策略!!这里假设创建的基于多对话框的MFC工程名为test ...

  3. Code Blocks 使用 VC2013编译HelloWord

    首先在 Settings-Complier中把 Microsoft Visual c++ 2010 设置成默认(莫不默认也无所谓,就是改着方便而已) 然后在ToolChain excutable 中, ...

  4. 解决VC++6.0 无法打开、无法添加工程文件

    在windows系统下,经常会遇到这样的问题:点击VC++6.0 的[文件]下的[打开]无法操作,并且无法向工程添加文件,下面详细介绍一下解决方案? 工具/原料 VC++6.0 修复工具:FileTo ...

  5. 如何使用VC++6.0发布程序(即release版本程序)

    大家都知道VC编译器默认生成debug版本的程序,但是debug版本程序无法运行在没有安装VC的电脑上, 这就要就我们生成release版本的程序,因为release版本在未安装VC的电脑上也能运行( ...

  6. 【转】 VC++6.0 在Win7 64位下调试,Shift+F5无法退出

    Win7 64位VC++6.0调试代码无法关闭窗口解决方法 VC++6.0 在64位Windows7下调试的时候,再结束调试,程序无法退出,只能关闭VC++6.0 IDE环境. 问题描述:当我击F5开 ...

  7. Code::Blocks

    Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境. Code::Blocks是开放源码软件.Code::Blocks由纯粹的C++语言开发完成,它使用了著名的图形界面库w ...

  8. 编译Code::Blocks源码 with MinGW on Win

    Build Code::Blocks源码 ---By 狂徒归来 CodeBlocks是一款非常优秀的IDE !可惜的是没有64位的版本,而且本来是轻量级别的IDE就应该够轻,能够像记事本工具一样,迅速 ...

  9. ubuntu下code::blocks设置运行窗口为gnome命令行

    code::blocks编译运行C++程序(F9)默认出现的运行串口在有鼠标的情况下进行粘贴还是很方便的,只要按下鼠标滑轮,位与剪切板中的数据就能粘贴到运行串口中.但是对于用笔记本而且没有鼠标地童鞋这 ...

随机推荐

  1. dwr3实现消息精确推送详细步骤

    最近项目中需要用到推送消息,找了很久终于找到一篇不错的文章,方便以后查看就转载了,也分享给大家,希望能帮到有需要的人. 第一.在项目中引入dwr.jar,然后在web.xml中进行配置,配置如下: & ...

  2. GUI程序设计

    1. 对话框(JDialog)使用示例 例1. JDialog简单使用示例. import javax.swing.JLabel; public class demoJDialog { JFrame ...

  3. OpenCV学习(16) 细化算法(4)

    本章我们学习Rosenfeld细化算法,参考资料:http://yunpan.cn/QGRjHbkLBzCrn 在开始学习算法之前,我们先看下连通分量,以及4连通性,8连通性的概念: http://w ...

  4. Informatica 常用组件Aggregator之四 创建聚合转换

    在 Mapping Designer 中选择"转换-创建".选择聚合转换. 为聚合输入一个名称,并单击"创建".然后单击"完成". Desi ...

  5. 关于一道JS面试题的思考

    题目: ; i < ; i++) { setTimeout(function() { console.log(new Date, i); }, ); } console.log(new Date ...

  6. C/C++语言中变量作用域:局部变量,全局变量,文件级变量

    C/C++语言中的变量分为全局变量和局部变量. 这样的划分方式的根据是变量的可见范围或者叫做作用域. 1 局部变量 局部变量指的是定义在{}中的变量,其作用域也在这个范围内.尽管常见的局部变量都是定义 ...

  7. JSON与XML

    XML——这种用于表示客户端与服务器间数据交换有效负载的格式,几乎已经成了Web services的同义词.我们知道AJAX技术能够使得每一次请求更加迅捷,对于每一次请求返回的不是整个页面,也仅仅是所 ...

  8. WebClient.DownloadData突然失灵

      有如下的代码: try { byte[] acsMetadata; using (WebClient webClient = new WebClient()) { acsMetadata = we ...

  9. Java 之 Given final block not properly padded

    获取Cipher对象的时候一定要写成 Cipher cipher = Cipher.getInstance("DES/ECB/NoPadding"); 不要写成 Cipher ci ...

  10. 高德地图引入库错误std::string::find_first_of(char const*, unsigned long, unsigned long) const"

    一:std:编译器错误解决 二:错误提示 "std::string::find_first_of(char const*, unsigned long, unsigned long) con ...