Building DMD on SmartOS

flamencofantasy via Digitalmars-d digitalmars-d at puremagic.com
Tue May 5 07:18:59 PDT 2015



Thanks for the tip!
I pointed LD_ALTEXEC to the gnu ld like this;
LD_ALTEXEC=/opt/local/x86_64-sun-solaris2.11/bin/ld

Now I can compile and build and run a simple D program with no 
imports.
I do get a link error but ld apparently auto corrects it;

[root at smartmachine ~]# dmd hello.d
/opt/local/x86_64-sun-solaris2.11/bin/ld: error in 
/opt/local/gcc47/lib/gcc/x86_64-sun-solaris2.11/4.7.4/crtend.o(.eh_frame); 
no .eh_frame_hdr table will be created.
[root at smartmachine ~]#

However once I import std.stdio and make use of writeln the build 
fails with the error below;

[root at smartmachine ~]# dmd hello.d
/opt/local/x86_64-sun-solaris2.11/bin/ld: error in 
/opt/local/gcc47/lib/gcc/x86_64-sun-solaris2.11/4.7.4/crtend.o(.eh_frame); 
no .eh_frame_hdr table will be created.
/opt/local/dmd/lib/libphobos2.a(file_8e0_5fb.o): In function 
`_D3std4file15DirIteratorImpl4nextMFZb':
std/file.d:(.text._D3std4file15DirIteratorImpl4nextMFZb+0x7d): 
undefined reference to `readdir64'
collect2: error: ld returned 1 exit status
--- errorlevel 1
[root at smartmachine ~]#

I did rebuild dmd, druntime and phobos with the binutils ld.

Should I give up?

Thanks!



More information about the Digitalmars-d mailing list