Fedora16上的D编程

Fedora16上的D编程,d,llvm,fedora,dmd,gdc,D,Llvm,Fedora,Dmd,Gdc,我最近安装了Fedora16(这很好),主要是因为我想尝试LDC2,但也因为GNOMeShell在Fedora上的运行要比Ubuntu 11.10(至少在我的硬件上)平稳得多 LDC2工作得很好,但我想知道,通过输出LLVM.ll/.bc代码,我是否可以在Windows/Mac/Android上编译和运行该应用程序。我可以在使用LLVM的Windows计算机上将.ll/.bc文件编译为ASM.s。然而,我在编译ASM时的第一次尝试给了我一个错误:“找不到‘main’函数。”。通过ASM,我确实看

我最近安装了Fedora16(这很好),主要是因为我想尝试LDC2,但也因为GNOMeShell在Fedora上的运行要比Ubuntu 11.10(至少在我的硬件上)平稳得多

LDC2工作得很好,但我想知道,通过输出LLVM.ll/.bc代码,我是否可以在Windows/Mac/Android上编译和运行该应用程序。我可以在使用LLVM的Windows计算机上将.ll/.bc文件编译为ASM.s。然而,我在编译ASM时的第一次尝试给了我一个错误:“找不到‘main’函数。”。通过ASM,我确实看到了一个主功能。我以前没有编译ASM的经验,所以我有点迷路了

我知道DRuntime在这里发挥作用,但关于LDC2的DRuntime平台支持状态的最新信息很少。所以我想知道我的选择是什么。LDC2此时是否可以为Windows编译代码?目前是否支持任何其他平台/体系结构的交叉编译

GDC呢?我想尝试一下GDC,但我在Fedora软件中心找不到它,而且我对Linux有点陌生,所以我很难从源代码构建它


D(版本2)是我最喜欢的语言(第二个是C),我期待着有一天我可以用D编写游戏/应用程序,而不必担心硬件或平台支持。我支持这种语言,我希望开源社区在未来能大力支持。这确实是我所见过的在力量、性能和生产力之间的最佳平衡

我想知道,通过输出LLVM.ll/.bc代码,我是否可以在Windows/Mac/Android上编译和运行该应用程序

标准库和语言运行库根据当前平台有大量有条件编译的代码,所以没有

LDC2工作得很好,但我想知道,通过输出LLVM.ll/.bc代码,我是否可以在Windows/Mac/Android上编译和运行该应用程序

不,不仅仅是因为运行时的差异。阅读虽然它是面向C/C++的,但仍然有许多东西也适用于D

GDC呢?我想尝试一下GDC,但我在Fedora软件中心找不到它,而且我对Linux有点陌生,所以我很难从源代码构建它

编译GDC很简单。把这本书通读一遍


其余的已经说过了。平台独立性是通过D级别的条件编译实现的,因此位代码也依赖于平台。

这令人失望,但并非意外。谢谢你的回复。在Fedora16上安装GDC有什么建议吗?是否可以使用GDC为ARM平台编译D2代码?另外,我可以卖用GDC编译的软件吗?当然,你可以卖用GDC编译的软件,就像你卖用gcc编译的软件一样。它们对代码的许可证或可销售性没有影响。gdc最终会在ARM上正常工作,但据我所知,目前d运行时还没有完全更新到可以在ARM上工作,所以虽然gdc将为ARM编译d代码,但它不会真正像预期的那样工作。