Pergunta

Eu tenho lido recentemente na linguagem de programação D, e estou interessado em usá-lo para uma pequena aplicação que funcionaria no OpenBSD.

Tanto quanto eu posso ver, não há porta OpenBSD para o compilador, mas eu posso ver uma referência ao OpenBSD no arquivo posix.mak.Eu não tenho um ambiente de desenvolvimento do OpenBSD à mão no momento, antes de ir e preparar um eu queria saber se alguém tentou se desenvolver com D no OpenBSD.

Como foi?Foi fácil de configurar?Há algum 'Gotchas' para estar ciente?Agradecemos antecipadamente.

Foi útil?

Solução

O druntime oficial (para DMD) não suporta OpenBSD. Para que tudo funcione corretamente com qualquer sistema operacional com D, Druntime deve apoiá-lo. É possível que isso construísse para o OpenBSD e trabalhe com Algumas coisas (eu não sei), mas para isso realmente funcionar corretamente, ele precisa apoiar especificamente o OpenBSD. Há um número de blocos de versão específicos para o OSES e, a menos que um bloco de versão para OpenBSD (ou POSIX) exista, então essa funcionalidade está faltando e não funciona. Se o suficiente estiver faltando, nada vai funcionar.

Agora, o Duntime faz Variar em algum nível do compilador para compilador, já que é onde o nível inferior, o material específico do sistema vai (por exemplo, as ligações C para Glibc e Win32). Assim, o GDC e o LDC têm suas próprias versões do Druntime e podem muito bem apoiar o OpenBSD. No entanto, o compilador oficial, DMD, não o faz atualmente.

Então, se você quiser usar OpenBSD com D, você terá que olhar para o GDC e o LDC. Acredito que os desenvolvedores do GDC em particular fizeram algum trabalho extra para adicionar operações operacionais e arquiteturas adicionais, já que está tentando entrar em gcc-apropriado, mas eu realmente não sei o que exatamente isso suporta neste momento, e eu não tenho ideia O que o estado atual do LDC é. No entanto, há uma chance decente que eles apóiam o OpenBSD.

Outras dicas

Eu encontrei apenas isto: https://bitbucket.org/goshawk/gdc/src/b3b60fdac583/d/fobos/std/c/openbsd/openbsd.d
Assim, pelo menos GDC (Frontend GCC para D) tem algum suporte OpenBSD.Mas está funcionando - eu não poderia dizer.
Mas você pode tentar :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top