回答
目前,答案是一個響亮的「它取決於」。具體而言,它依賴於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