DMD 1.024 and 2.008 releases
Brad Roberts
braddr at puremagic.com
Wed Nov 28 17:21:04 PST 2007
On Wed, 28 Nov 2007, Markus Dittrich wrote:
> Walter Bright Wrote:
>
> > korogu wrote:
> > > Version 2.007 worked fine, but trying to run 2.008 I got :
> > >
> > > dmd: /lib/tls/libc.so.6: version `GLIBC_2.4' not found (required by dmd)
> > >
> > > How can i correct that :-s ?
> > >
> >
> > This versin of dmd was compiled with the latest ubuntu, which probably
> > uses the latest C runtime library. So can you install the latest C
> > shared runtime library?
>
> It looks like the only symbol requiring >=glibc-2.4 in the binary is
>
> [dittrich at despina] readelf -s ./dmd.bin | grep GLIBC_2.4
> 69: 00000000 70 FUNC GLOBAL DEFAULT UND __stack_chk_fail at GLIBC_2.4 (10)
>
> which probably means that you used "-fstack-protector" or sth similar to compile the
> dmd source. Without it, the requirement for a newer glibc may actually go away.
> Otherwise, dmd.bin could also be distributed as a static binary at the cost of a (much)
> larger filesize.
>
> Markus
You can't link libc statically (for glibc at least, other os' do allow it)
any more. I forget the last version that supported it, but it might well
be prior to 2.4. Either way, it's not considered supported to build
against version X of glibc and run it against any version < X, only >=
even if it happens to not link against a versioned symbol (not all symbols
are versioned).
Later,
Brad
More information about the Digitalmars-d-announce
mailing list