2012-03-14 25 views
5

我最近一直在閱讀D編程語言,並且有興趣將它用於可在OpenBSD上運行的小型應用程序。用於OpenBSD的D編程

就我所見,編譯器沒有OpenBSD的端口,但我可以在posix.mak文件中看到對OpenBSD的引用。目前我還沒有OpenBSD開發環境,所以在我準備一個OpenBSD開發環境之前,我想知道是否有人嘗試過在OpenBSD上用D開發。

它是怎麼回事?安裝容易嗎?是否有任何「陷阱」需要注意?提前致謝。

+0

如果你想知道openbsd中沒有安裝的軟件包,最好的方法是在http://openports.se/中搜索軟件包。 – 2012-03-15 02:29:36

回答

2

官方的druntime(對於dmd)不支持OpenBSD。爲了讓所有的東西能夠在任何帶有D的操作系統上正常工作,druntime必須支持它。它可能會爲OpenBSD構建,並且可以與某些的東西(我不知道)一起工作,但爲了真正正常工作,它需要專門支持OpenBSD。有許多特定於操作系統的版本塊,除非存在OpenBSD(或Posix)的版本塊,否則該功能缺失,並且不起作用。如果有足夠的缺失,那麼沒有任何工作。

現在,druntime 確實從編譯器到編譯器在某種程度上有所不同,因爲這是更低級別的系統特定的東西(例如C綁定到glibc和Win32)。所以,gdc和ldc有自己的druntime版本,可能很好的支持OpenBSD。但是,官方編譯器dmd目前並未這樣做。

所以,如果你想使用OpenBSD的D,你將不得不看看gdc和ldc。我相信特別是gdc開發人員已經做了一些額外的工作來添加額外的操作系統和體系結構,因爲它試圖進入gcc-proper,但我真的不知道它到底支持什麼,而且我也不知道什麼是ldc的當前狀態。但是,他們支持OpenBSD的機會很大。

+0

感謝Jonathan。我會檢查它,但是我認爲你沒有嘗試在OpenBSD上自己構建任何東西? – 2012-03-21 08:47:32

1

我發現只有這個:https://bitbucket.org/goshawk/gdc/src/b3b60fdac583/d/phobos/std/c/openbsd/openbsd.d
所以,至少GDC(D的GCC前端)有一些OpenBSD的支持。但它工作 - 我不能說。
但你可以試試:)

+0

是的,謝謝你的鏈接。它和我提到的posix.mak文件一樣,暗示有人試圖在OpenBSD上運行這個文件。我會盡力讓它工作,但我仍然有興趣聽到任何實際上在OpenBSD上運行D開發環境的人。 – 2012-03-16 05:39:43

+0

@Raxillan:停止傳播FUD。如果你對當前的事態還不瞭解,不要說任何話 - 至少聽起來不那麼確定。 – simendsjo 2012-03-16 15:09:16

+0

@simendsjo Prooflinks,請 - 然後我刪除帖子。好?我很高興知道:D已經穩定(沒有突破的變化),Tango被移植到D2,創建了豐富的IDE,等等。 – Raxillan 2012-03-16 15:24:56