D.gnu - Coping with a broken math lib ?
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (24/24) Feb 28 2006 ... or at least one that lacks several "long double"
... or at least one that lacks several "long double" functions, such as the one in Darwin 8.0.1 for x86: http://www.opensource.apple.com/darwinsource/10.4/Libm-92/ It's OK for "powerpc", but the "i386" version wasn't up to speed - so you got linker errors for missing symbols... http://www.algonet.se/~afb/d/gdc-darwin8-x86-errors.txt In other words, it's just like it says in std.c.math module: private import gcc.config; // unfortunately, these do not always exist in a library It's been "fixed" in a newer version of Libm (in Darwin 8.4+), but it would be "nice" if GDC could detect the missing ones ? Perhaps fall back to using a "double" version, or other such workaround ? The "real" type isn't 80 bits everywhere anyway. I also fixed a ppc conditionalizing in the ldcompat part of it: http://www.algonet.se/~afb/d/ldblcompat.d (a fix for i386/ppc64) If you hack the references to all the missing math functions out, *then* GDC works OK for Darwin 8 x86. Also works for Darwin 8 ppc. But since Darwin 8.0.1 "ships" with gcc-4061 (i.e. gcc-4.0.0 based), any 4.x based GDC needs to be built using: CC=gcc-3.3 CXX=g++-3.3 The same reason why gdcmac requires Xcode 2.2+, for Mac OS X 10.4... (There won't be any Darwin binaries in the gdcmac project, just Mac) --anders PS. Just wanted to know if it worked on "plain" Darwin too... It did. :-)
Feb 28 2006