[parisc-linux] Status update hppa - glibc 2.2.92 (Problems with __divdi3)
Carlos O'Donell
carlos@baldric.uwo.ca
Mon, 2 Sep 2002 19:47:52 -0400
p-l,
I've already posted the same thing on debian-glibc.
a. 'cvs co' from glibc upstream cvs (2.2.92)
b. Apply debian patches from 0list
c. Fix things
Preliminary modified patches for hppa are at:
http://www.baldric.uwo.ca/~carlos/glibc-2.3/glibc23-hppa-pthreads.dpatch
http://www.baldric.uwo.ca/~carlos/glibc-2.3/glibc23-hppa-rela.dpatch
These replace the previous glibc22-* patches of the same name.
Please do _NOT_ accept these as final versions, I'm presenting them
for anyone who may want to attempt to recreate or verify my problem.
Current build issues are:
gcc-3.2 -nostdlib -nostartfiles -o /mnt/flaire/src/glibc-upstream-cvs/libc-=
build/iconv/iconvconfig -Wl,-dynamic-linker=3D/lib/ld.so.1 /mnt/flaire/=
src/glibc-upstream-cvs/libc-build/csu/crt1.o /mnt/flaire/src/glibc-upstream=
-cvs/libc-build/csu/crti.o `gcc-3.2 --print-file-name=3Dcrtbegin.o` /mnt/fl=
aire/src/glibc-upstream-cvs/libc-build/iconv/iconvconfig.o /mnt/flaire/src/=
glibc-upstream-cvs/libc-build/iconv/strtab.o /mnt/flaire/src/glibc-upstream=
-cvs/libc-build/iconv/xmalloc.o -Wl,-rpath-link=3D/mnt/flaire/src/glibc-up=
stream-cvs/libc-build:/mnt/flaire/src/glibc-upstream-cvs/libc-build/math:/m=
nt/flaire/src/glibc-upstream-cvs/libc-build/elf:/mnt/flaire/src/glibc-upstr=
eam-cvs/libc-build/dlfcn:/mnt/flaire/src/glibc-upstream-cvs/libc-build/nss:=
/mnt/flaire/src/glibc-upstream-cvs/libc-build/nis:/mnt/flaire/src/glibc-ups=
tream-cvs/libc-build/rt:/mnt/flaire/src/glibc-upstream-cvs/libc-build/resol=
v:/mnt/flaire/src/glibc-upstream-cvs/libc-build/crypt:/mnt/flaire/src/glibc=
-upstream-cvs/libc-build/linuxthreads /mnt/flaire/src/glibc-upstream-cvs/li=
bc-build/libc.so.6 /mnt/flaire/src/glibc-upstream-cvs/libc-build/libc_nonsh=
ared.a -lgcc `gcc-3.2 --print-file-name=3Dcrtend.o` /mnt/flaire/src/glibc-u=
pstream-cvs/libc-build/csu/crtn.o
/mnt/flaire/src/glibc-upstream-cvs/libc-build/libc.so.6: undefined referenc=
e to `__divdi3_internal'
collect2: ld returned 1 exit status
make[2]: *** [/mnt/flaire/src/glibc-upstream-cvs/libc-build/iconv/iconvconf=
ig] Error 1
make[2]: Leaving directory `/mnt/flaire/src/glibc-upstream-cvs/libc/iconv'
make[1]: *** [iconv/others] Error 2
make[1]: Leaving directory `/mnt/flaire/src/glibc-upstream-cvs/libc'
make: *** [all] Error 2
I have _no_ idea what is going on here, I have to begin digging at:
http://sources.redhat.com/ml/glibc-cvs/2002-q3/msg00325.html (Shows the che=
ckin)
libc/sysdeps/wordsize-32/lldiv.c shows:
24 #ifdef SHARED
25 /* This is an ugly trick. We cause the C code generated for the co=
de
26 in lldiv.c to use __divdi3_internal instead of __divdi3 by defin=
ing
27 an alias on the assembler level. */
28 asm ("__divdi3 =3D __divdi3_internal");
29 #endif
objdump -t /mnt/flaire/src/glibc-upstream-cvs/libc-build/libc.so.6 | grep d=
ivdi3
001173d4 l F .text 00000028 __udivdi3
00000000 *UND* 00000000 __divdi3_internal
It's clearly not there :}
If anyone understands... a hint would be most helpful=20
Cheers,
c.