回答
目前,答案是一个响亮的“它取决于”。具体而言,它依赖于OS和D.
DMD或数字火星d编译器的版本上,是参考实现和提供了64位的支持。 64位的支持是新的(见下面的评论),但语言创建者瓦尔特布莱特已经表明,现在把它与32位相提并论,现在D2是一个高优先级的事情(或者更确切地说,现在Andrei Alexandrescu的书"The D Programming Language"已经发布)。不过,他表示,由于链接器问题,前几个版本在Windows上不支持64位(这似乎是still be true)。
对于D1,如果使用LDC,这是一个d编译打靶LLVM支持64位是在Linux和Mac很大。对于Windows,以GCC后端为目标的编译器GDC已复活,但在曲线后面有几个版本。在D1中,由于语言规范相当稳定,因此这不是非常重要。
对于D2,64位支持目前基本上不存在。前面提到的GDC确实支持它,但D2一直在迅速发展,GDC也过时了,无法在这里使用。为版本2.015(最新的GDC支持)编写的大多数非平凡代码可能甚至不会在版本2.040(最新版本的DMD)上编译,反之亦然。
编辑:截至今天,2010年6月21日,有在SVN迈向DMD 64位支持作了一次提交。这些与编译器相差甚远,但重点在于它正在进行中。
编辑#2:截至2011年2月中旬,DMD 2.052支持Linux上的64位。
编辑#3:截至2011年11月,GDC是可用的,只有一个发布在DMD后面,尽管它有些beta版本,但尚未打包。你必须从源代码编译它。
正如dsimcha所说,D2.0你不会找到一个64位的编译器。但是,您可以安装32位dmd编译器来在Linux中编译32位程序。你可能会使用Derelict作为你的SDL包装。
更新:由于编译器是32位的,你需要安装SDL库的32位版本。我不认为您会在存储库中找到它们,因此您需要自己编译SDL(您可能能够从32位repo中解压缩SDL .deb并手动安装它们)。对不起,我错过了这将是一个问题。
那个链接是金色的。它让我更加接近。然而,我仍然陷入困境。 32位可执行文件不需要加载SDL库。 – 2010-03-05 06:23:08
- 1. C++ 64位std :: ostream支持
- 2. 缺少64位支持
- 3. 64位JAVA支持PKCS11
- 4. 某些Windows DLL如何明显支持32位和64位?
- 5. Mono是否支持64位Windows?
- 6. iPhone应用程序,支持64位
- 7. 支持64位的mallinfo替代品?
- 8. Windows 7(x64)支持Java 1.4 64位吗?
- 9. Unity Neatplug不支持iOS 64位
- 10. Stream规格的钛64位支持
- 11. 用于Windows 64位TLS支持的Emacs24.5
- 12. CUDA中的64位数字支持
- 13. libjson是否支持64位int类型?
- 14. solaris x86不支持64位吗?
- 15. geckodriver 0.15不支持Firefox 64位
- 16. Android - Skobbler不支持64位处理器
- 17. 对IBM MQ的64位支持
- 18. 何时支持Windows 64?
- 19. D对COM的支持
- 20. 如何使一个mac应用程序支持32位和64位系统
- 21. 如何单一应用二进制支持64位和32位应用程序
- 22. 如何将我的32位Amazon EC2 EBS支持实例升级到64位?
- 23. 正确更新一个32位方法到64位支持
- 24. 在Windows/Mac和32位/ 64位上支持SWT
- 25. SetWindowsHook支持32位和64位应用程序
- 26. D编程:我如何从文件读取64位整数?
- 27. CassiniDev 64位持续集成
- 28. 如何在Matlab 64位系统中使Matlab 2011b支持Visual C++ express 2012?
- 29. 运行支持32位的32位与日食JVM在Windows 64位
- 30. 巧克力 - 这个软件包不支持64位架构
更新:Linux的64位DMD已于2011年2月17日发布(v2.052)。 – kennytm 2011-03-07 21:19:01
更新:GDC已经赶上DMD前端明智,目前在DMDFE版本2.052。 – klickverbot 2011-03-09 18:22:56
我们现在有适用于Windows的64位GDC二进制包。 – 2012-01-26 15:02:40