6

我最近在我的 Mac 上通过 hombrew 安装了 ldc,并且正在测试从 D wiki将代码作为脚本运行时,我注意到使用 ldmd2 编译我的程序之后也不会运行我的程序。那么有什么区别,因为这与运行 ldc2 的行为相同。

这是我的程序

import std.stdio;
void main()
{
    writeln("Hello, world without explicit compilations!");
}

编辑:网站声明“对于小型项目,只需一步即可编译和运行。大多数(如果不是全部)编译器包都包含一个名为 rdmd/gdmd/ldmd 或类似的工具。出于教学目的,我们将其称为 rdmd 。” 我从中得到的是它取决于您使用的编译器,但在 ldc 的情况下,我应该使用 ldmd。

4

1 回答 1

7

ldmd2只是一个包装脚本,用于ldc2将参数格式从 dmd 样式转换为 ldc 样式。

所以它做的事情完全相同,只是编译命令行上的一些选项和标志有不同的名称和类似的东西。

该链接正在谈论r dmd ,它是一个单独的程序,可以递归地获取依赖项、编译并自动运行。rdmd 在编译器之上工作,可能已与它一起打包,或者可能需要单独下载。

它的来源在这里:https ://github.com/D-Programming-Language/tools/blob/master/rdmd.d

它与ldmd2's 选项格式兼容。

于 2016-02-19T21:19:46.710 回答