Hello. I am trying to link 9base against uClibc. Linkage fails thus:
make[3]: Entering directory `/home/strake/buildroot-2011.11/output/build/9base-6/awk' make[3]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. LD awk ../lib9/lib9.a(fltfmt.o): In function `xdtoa': fltfmt.c:(.text+0x39a): undefined reference to `frexp' ../lib9/lib9.a(strtod.o): In function `fmtstrtod': strtod.c:(.text+0x994): undefined reference to `ldexp' collect2: ld returned 1 exit status make[3]: *** [awk] Error 1 make[3]: Leaving directory `/home/strake/buildroot-2011.11/output/build/9base-6/awk' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/strake/buildroot-2011.11/output/build/9base-6/awk' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/strake/buildroot-2011.11/output/build/9base-6' make: *** [/home/strake/buildroot-2011.11/output/build/9base-6/.stamp_built] Error 2 It fails thus also when built without buidroot, but works when linked against GNU libc. uClibc configuration here: http://hpaste.org/64419 $ nm uClibc-0.9.32/lib/libm.a | human-grep frexp s_frexp.os: 0000000000000000 r .LC0 0000000000000000 T __GI_frexp 0000000000000000 T frexp $ nm uClibc-0.9.32/lib/libm.a | human-grep ldexp s_ldexp.os: U _GLOBAL_OFFSET_TABLE_ U __GI___finite 0000000000000000 T __GI_ldexp U __GI_scalbn U __errno_location 0000000000000000 T ldexp I looked at lib9/libc.h, and found extern double frexp(double, int*); /* extern double ldexp(double, int); <math.h> */ Not sure why one is commented out, and not the other. I searched the dev@suckless.org archives and found no such trouble. I haven't a clue why this failed. How can I link this? Thanks. Cheers, strake