在 Windows 上配置 CodeBlocks + gdcwin 进行 D 编程-程序员宅基地

技术标签: D语言  CodeBlocks  GDC  编程  

(2007-03-07更新,使用GDC 0.23,基于DMD 1.007)

零 说明
  经过下面的步骤,我们就拥有了一个(基本)全能的D IDE了.
 可以对D工程进行语法高亮,代码完成,可以进行可视化的调试!!

一 下载,准备

1 下载CodeBlocks,目前是1.0rc2,使用没有MinGW打包的我们自己安,否则gcc,gdc版本问题很麻烦.
 http://jaist.dl.sourceforge.net/sourceforge/codeblocks/codeblocks-1.0rc2.exe
 
2 下载CodeBlocks的更新包(每夜构建),这个是列表
 http://forums.codeblocks.org/index.php?board=20.0
  我昨天使用的是2007-2-11的更新,应该总是使用最新的.
   http://download.berlios.de/codeblocks/CB_20070211_rev3592_win32.7z
  每夜构建需要一些运行时文件的更新,如MinGW和xwWidgets的DLL等,也需要下载.
  
3 下载MinGW,目前使用的是5.1.3
 http://jaist.dl.sourceforge.net/sourceforge/mingw/MinGW-5.1.3.exe
 
4 下载gdb,我用的是6.3-2
 http://jaist.dl.sourceforge.net/sourceforge/mingw/gdb-6.3-2.exe
 
5 下载gdc,目前是0.23,基于DMD 1.007最新版

http://nchc.dl.sourceforge.net/sourceforge/dgcc/gdc-0.23-mingw32-gcc-3.4.5.tar.bz2

二 安装

1 MinGW
 MinGW使用在线下载安装,选择你需要的组件,假设安装到c:\MinGW,以下称MinGW安装目录.
2 gdb
 选择安装目录为MinGW安装目录,一通下一步就OK了.
3 gdcwin
 解压缩gdc-0.23-mingw32-gcc-3.4.5.tar.bz2 到MinGW安装目录覆盖就OK了.
4 安装CodeBlocks
 运行codeblocks-1.0rc2.exe,选择安装目录,我直接就安装在C:\Program Files\CodeBlocks
5 安装CodeBlocks的更新包
 A) 更新运行时包:(根据http://forums.codeblocks.org/index.php?board=20.0 的建议)
  解出mingwm10.7z里面的mingwm10.dll,替换C:\Program Files\CodeBlocks里面的.
  解出wxmsw26_gcc_cb_wx2.6.3p2.7z里面的wxmsw26_gcc_cb.dll,替换C:\Program Files\CodeBlocks里面的.
  解出wxmsw26u_gcc_cb_wx2.6.3p2AndCbPatch_version3.7z里面的wxmsw26u_gcc_cb.dll,替换C:\Program Files\CodeBlocks里面的.
 B) 解出CB_20070211_rev3592_win32.7z每夜构建更新包里面的所有文件,替换C:\Program Files\CodeBlocks里面的.
 
三 设置编译器
 1 在CodeBlocks的Setings菜单下,选择Compiler And Debuger,出现编译器设置对话框.
 2 Selected Compiler下拉列表框中,选择GDC D Compiler
 3 在第二个下拉列表框中,选择Toolchain Executables,下面就出现了Compiler's installation Directory编辑框,
  点击Auto-Detect,应该就会自动找到"C:\MinGW",我们的编译器安装路径.下面的选项不用动.

经过测试,下面的步骤4可以不用设置
 4 在第二个下拉列表框中,选择Search Directory,我们来配置编译链接搜索目录.
  A)Complier页,保证有路径C:\mingw\bin
  B)Linker页,保证有路径C:\mingw\lib
  
四 使用
 现在就可以创建一个D工程了,编译,设置断点,F8调试,哈哈哈哈...

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/iteye_6620/article/details/81425599

智能推荐

路漫漫其修远兮:js的成长经历(十七)—— vue基础(一)-程序员宅基地

文章浏览阅读241次。目录什么是Vue.js为什么要学习流行框架框架和库的区别Node(后端)中的 MVC 与 前端中的 MVVM 之间的区别Vue.js 基本代码 和 MVVM 之间的对应关系Vue之 - 基本的代码结构`Vue指令之`插值表达式`、`v-cloak``v-text`和`v-html`Vue指令之`v-bind`的三种用法Vue指令之`v-on`和`跑马灯效果`跑马灯效果Vue指令之`v-on的缩写...

node.js云学堂微信小程序学习系统的设计与实现毕业设计源码011735_基于微信平台的《javascript程序设计》学习系统的设计与实现-程序员宅基地

文章浏览阅读246次。用户:免费好课、直播公开课、课程信息推荐、云学堂资讯、精选好课管理员:首页、用户管理、课程信息管理、精选好课管理、直播公开管理、免费分类管理、云学堂资讯管理_基于微信平台的《javascript程序设计》学习系统的设计与实现

【解决Anaconda3安装问题】conda --version 不是内部命令、没有script文件_conda --version没反应-程序员宅基地

文章浏览阅读9.7k次,点赞11次,收藏9次。这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma..._conda --version没反应

flex绑定数据-程序员宅基地

文章浏览阅读664次。在使用Flex开发的过程中,数据绑定是一定会遇到的,这种技术简单,又有点好玩,重要的是它让开发变得简单了。 在Flex中,数据绑定的方式有这么三种:直接在“{}”中填写绑定变量 使用标签绑定 使用ActionScript中的BindingUtils类绑定 示例1中的绑定方式即是第一种绑定方式,在“{}”中直接填写inputUnit.text,表

超融合、软件定义存储(SDS)、分布式存储以及Server SAN的区别与联系_部署方式包括集中式存储、分布式存储、超融合等-程序员宅基地

文章浏览阅读5.7k次。一时让人眼花缭乱的技术概念存储设备一直作为计算机系统的重要组成部分,过去很长一段时间,用户习惯于使用 SAN 存储作为保存企业关键业务数据的不二选择。基于 SAN 存储为核心的三层式基础架构(服务器-存储网络-存储设备),成为企业中最常用的基础架构,也称作传统架构。互联网的出现,信息量呈现爆炸式增长,人类产生数据的速度超越了以往所有时代的总和,需要存储的数据量也是急剧地增长。大数据,人工智能,物联网等新技术出现,对存储提出了新的需求。于是市面涌现了一系列的关于存储的新的技术概念和名词(包括 软件定义存储_部署方式包括集中式存储、分布式存储、超融合等

【Unity3d】百度AI人脸识别实例——描绘人脸特征点_unity 如何判断texture2d 是否黑色-程序员宅基地

文章浏览阅读5.1k次。上一篇文章介绍了在Unity3d中使用百度AI人脸识别功能,本文将用一个描绘人脸特征点的程序来讲解对SDK的调用。首先我们需要搭建一个简单的场景:一个开始测试的按钮,一张供测试和绘制特征点的图片,和显示debug信息的文字框: 然后新建一个叫FaceDetector的脚本,定义变量:public Text debugInfo; // 显示d_unity 如何判断texture2d 是否黑色

随便推点

Thinkjs——采用nodemailer发送邮件_thinkjs服务端发送邮件-程序员宅基地

文章浏览阅读863次。介绍 ThinkJS 是一款面向未来开发的 Node.js 框架,整合了大量的项目最佳实践,让企业级开发变得如此简单、高效。从 3.0 开始,框架底层基于 Koa 2.x 实现,兼容 Koa 的所有功能。 官方文档传送门点这里步骤: 1.创建一个thinkjs项目,执行 thinkjs new [project_name] 来创建项目,如: 2.安装如下包:..._thinkjs服务端发送邮件

操作系统 - 进程管理_实现生产者—消费者问题基于消息队列-程序员宅基地

文章浏览阅读385次。目录进程与线程1. 进程2. 线程3. 区别进程状态的切换进程调度算法1. 批处理系统1.1 先来先服务 first-come first-serverd(FCFS)1.2 短作业优先 shortest job first(SJF)1.3 最短剩余时间优先 shortest remaining time next(SRTN)1.4 最高相应比优先..._实现生产者—消费者问题基于消息队列

C语言实验4:指针-程序员宅基地

文章浏览阅读1.5k次,点赞39次,收藏18次。指针是一个变量,其值是另一个变量的地址。通过指针,可以直接访问存储在该地址上的数据。

SQL 数据库 学习 024 查询-07 order by 的用法 --- 以某个字段排序_sql使数据按字段排序-程序员宅基地

文章浏览阅读1.3w次。我的电脑系统:Windows 10 64位SQL Server 软件版本: SQL Server 2014 Express 本篇博客里面使用了 scott 库,如何你现在还没有添加这个库到你的服务器里面,请在查看本篇博客前,访问这篇博文来在你的服务器里面附加scott库。order by — 以某个字段排序例子:select * from emp order by sal; --默认_sql使数据按字段排序

解决360浏览器不支持IDM下载的问题_360下载失败怎么用idm安装-程序员宅基地

文章浏览阅读4.5w次,点赞2次,收藏2次。像360安全浏览器和360极速浏览器的设置中,下载工具都只能选择自己。不能选择IDM下载。 如图: 如何让它们支持IDM下载呢? 在IDM的文件夹中,可以看到一个扩展文件,将它拖动的浏览器中进行安装即可。 如图: 然后打开IDM,可以看到360安全/技术浏览器了。如果没有手动添加浏览器。 然后就可以用IDM下载了。..._360下载失败怎么用idm安装

scala方法中的变量_Scala中的变量-程序员宅基地

文章浏览阅读405次。scala方法中的变量 Scala变量 (Scala variables)A variable is named a reference to a memory location. The location stores the data that is used by the program. 变量被称为对存储位置的引用。 该位置存储程序使用的数据。 Based on the data t..._scala 方法 变量

推荐文章

热门文章

相关标签