I wanted to use dmd at another site, so I took my laptop and the latest dmd 2 zip.

All went well, till I ran dmd, and got an error message about it needing a newer libc, I had only libc-2.3.5.so on a Fedora version from 2005.

I thought some expletives about software vendors always compiling their products on the absolutely latest OS version, thus introducing gratuitous dependencies on brand-new libraries, where most often they could compile with a 5 year old version, and make clients happy.

But, thanks to Walter, /I had the source/, so I compiled dmd from scratch. I got a surprise when I tried to use it. Errors I can't figure out:

$ cat foo.d
import std.stdio;

void main(){}

$ dmd foo.d
/home/georg/lang/d/dmd/linux/bin/../../src/phobos/std/traits.d(855): template instance isStaticArray!(const(int)[]) does not match template declaration isStaticArray(T : U[N],U,uint N) /home/georg/lang/d/dmd/linux/bin/../../src/phobos/std/traits.d(855): Error: expression isStaticArray!(const(int)[]) of type void does not have a boolean value /home/georg/lang/d/dmd/linux/bin/../../src/phobos/std/traits.d(855): static assert (!isStaticArray!(const(int)[])) is not evaluatable at compile time
$

Interestingly, on Fedora 10, I can recompile dmd and actually use it.

What should I do?

Reply via email to