我已经对“D”感兴趣了几年,最近决定开始实际使用它。我已经很容易掌握了基础知识,我喜欢这种语言的基础功能集,而且我读得越多,印象就越深刻。

现在,我对将自定义Web应用程序服务器编写为一个爱好项目非常感兴趣,并且我希望它是一个简单的二进制文件,并为实际的Web应用程序使用动态链接的库。我相信D是这项冒险的完美语言。

只有一个大问题...在过去的几天中,我完全无法使任何类型的IDE设置正常工作。我可以在命令行上编译并运行所有内容,但是我可以在任何可用的IDE中尝试所有内容(代码:: Blocks,eclipse + descent,带有D插件的Xcode,甚至是在Windows的VirtualBox中运行的Windows D-IDE XP Pro)唯一发生过的事情是:
object.d: Error: module object cannot read file 'object.d'
经过两天的尝试不同的事情并遵循了教程,这真的让我感到不安。我想学习有效地使用D,但是如果要保持理智,我需要一些舒适的工具链,其中包括在编辑器中的代码完成,这显然是我要做的。

[edit:增强了的真正重要性的重要部分]

是否有人可以帮助我设置eclipse或(最好是)netbeans(但似乎没有公开可用的插件)来为我提供IDE中的编译和运行功能以及代码完成功能?在Mac上运行Mac OS X 10.6?

我想使用phobos库(并因此使用2.0编译器),但是我并不在乎它的dmd还是gdmd (gdcmac)

[添加]

我相信我们可以假设我的dmd编译器安装正确,因为它可以从命令行运行。我只是不想从命令行使用它,因为它很乏味。问题是关于IDE,编译器可以正常工作,只是IDE不会

最佳答案

好吧,我心中的顽固 bug 无法解决这个问题,而我终于把它解决了。

要使其在Mac OS X 10.6上都能正常运行,所需的组件是:

  • DMD编译器
  • Eclipse“伽利略”(3.4版)
  • 血统
  • DSSS
  • 更改为/usr/etc/rebuild/default
  • 一个我一起砍死的新文件/usr/etc/rebuild/macosx.conf
  • Eclipse的全局和每个项目的设置

  • 按照这些说明进行操作之后,您将使Eclipse能够在D项目上完成代码,并且还可以从IDE内进行构建/运行。

    使它运行的实际步骤如下。
  • 安装digitalmars dmd 2.0编译器
  • digitalmars.com(direct link to 2.041)
  • 下载二进制发行版
  • 将下载的文件解压缩到~/somefolder(为我创建了〜/somefolder/dmd2文件夹,在本示例中将使用该文件夹。)
  • 终端中的
  • (/Applications/Utilities/Terminal.app)将文件移至目标
  • sudo mv ~/somefolder/dmd2/osx/bin/* /usr/bin/在询问时输入您的登录密码
  • 将刚刚复制的dmd.conf移至其位置:sudo mv /usr/bin/dmd.conf /etc/dmd.conf
  • sudo mv ~/somefolder/dmd2/osx/lib/* /usr/lib/
  • sudo mv ~/somefolder/dmd2 /usr/
  • 使用您喜欢的文本编辑器来编辑/etc/dmd.conf,使其包含以下内容:


  • http://www.eclipse.org/downloads/(我为c/c++选择了 cocoa 版本)中的数百种版本中下载并安装您最喜欢的Mac OS X版本的eclipse。
  • 安装后裔(按照the normal instructions in the wiki几乎为)
  • 运行Eclipse(不必打扰以root身份运行)
  • 从菜单栏中转到Help-> Install New Software。 (wtf可以在Help菜单中吗?!)
  • http://downloads.dsource.org/projects/descent/update-site复制/粘贴到url字段中。
  • 按照屏幕上的说明完成安装。
  • 安装dsss from sourceforge(direct link to .dmg)
  • 与其他磁盘镜像一样,在磁盘镜像上使用安装程序包。
  • 创建一个文件/usr/etc/rebuild/macosx.conf并将以下代码段粘贴到其中。 (并保存,嗯)


  • 更改/usr/etc/rebuild/default文件为:profile=dmd-macosx
  • 设置Eclipse以使代码完成
  • 在全局Eclipse首选项中,导航tp D => Build Path => User Libraries
  • 单击New,键入“std”,按OK选择新创建的条目,单击Add Directory
  • 导航到/usr/dmd2/src/phobos/std并添加它。
  • 设置Eclipse项目。
    您必须为要创建的每个D项目手动执行此操作
  • 使用“D => D Project”向导创建一个新项目(感谢Descent)
  • 进入项目属性(在“项目资源管理器”中右键单击项目,然后选择“属性”)
  • 在左侧列表中,选择D Build Path,然后在出现的面板中选择Include Path选项卡。
  • 单击Add Library按钮,然后在向导的第二页中选择std
  • 配置外部构建工具
  • 转到External tools configurations...(从绿色小播放按钮的下拉菜单中的工具箱位于构建/运行/调试工具栏中,在其中)
  • 在左侧列表中,单击Program,然后从上下文菜单中选择New
  • 为您的配置提供一个体面的名称,例如“Build with dsss”,并设置以下选项:
  • 位置:/usr/bin/dsss
  • 工作目录:项目的dsss.conf文件的完整目录路径
    (如果没有dsss.conf文件,请在命令行上创建一个:dsss genconfig)
  • 参数:build(或重建,清理或...)
  • 重复上述步骤2和3,以获得所需的任意数量的构建/运行选项。

  • 恭喜,现在一切正常。

    如果由于某种原因对您不起作用,请告诉我,我很乐意找出问题出在哪里,并帮助您使其正常工作。如果有更好或更简单的方法,我也很想知道。

    10-01 22:00