D可以编译成平台独立代码吗?

Can D be compiled into platform independent code?

我看到了 this question,我想知道我是否可以用 D 做类似的事情。

更具体地说,我正在从 Linux 机器开发,处理器为 x86_64。

我的目标是

项目目前在 Linux 机器上,完全使用标准的 Phoboes 库,重要的是,它大量使用 LuaD 和一些编译为 *.o 文件的 C 源代码。

如果D.NET project成功,您就会得到答案。当前状态是没有针对 JVM 或 CLR 或任何其他 VM 的 D 编译器。所有当前的 D 编译器都编译成本机机器代码。我梦想开始一个项目来制作针对 JVM 的 D 编译器,但不幸的是没有时间进行这样(巨大的)项目。

D 使得编写可移植源代码变得非常容易,因为标准库为许多 OS 特定的 API 提供了抽象。否则,C++ 的相同答案通常适用于 D,尽管目前所有实现都将 D 编译为本机代码。

您可以在 Wine 下通过 运行 一个 Windows D 编译器生成 Windows 二进制文件。理论上,GDC和LDC应该可以交叉编译,但我不知道这两个工具链的成熟度如何。