По состоянию на февраль 2012 года, похоже, что LDC на самом деле не годится для использования (по крайней мере, в Debian).
Например, рассмотрим первую программу из D book :
import std.stdio;
void main(string[] args)
{
writeln("Hello, world!");
}
Это не удастся скомпилировать с LDC в моей системе:
hello.d(24): Error: module stdio cannot read file 'std/stdio.d'
То же самое относится и к первой программе на dlang.org :
import std.stdio;
void main() {
ulong lines = 0;
double sumLength = 0;
foreach (line; stdin.byLine()) {
++lines;
sumLength += line.length;
}
writeln("Average line length: ",
lines ? sumLength / lines : 0);
}
Это потому, что мой LDC не поддерживает Phobos - текущая библиотека времени выполнения D .Похоже, что возможно построить версию LDC для D2, включая Phobos, но это не тот способ, которым она поставляется в Debian, по крайней мере.
GDC, и, конечно, DMD, оба прекрасно компилируют вышеприведенное.Похоже, что GDC достаточно обновлен (DMD выпущен 2.057 два месяца назад, и GDC поддерживает его сейчас).
Для меня GDC был очевидным выбором, потому что простой 'apt-get -V install gdc
' принес оба компилятораи среда выполнения Phobos без проблем (проверено на нестабильной работе Debian).