__udivdi3 problem in glibc-2.2.5 with gcc-3.2
Jack Howarth
howarth@bromo.msbb.uc.edu
Fri Aug 23 05:51:00 GMT 2002
Jeff,
In what order have you been building glibc-2-2-branch and
gcc 3.2 lately and have you used a binutils older than
2.13.90.0.4? Basically two bugs where fixed in binutils
2.13.90.0.4. The first bug results in bogus symbol conflict
messages between libgcc_s.so.1 and libc.so.1 over __divdi3
when glibc-2-2-branch was used to build progams with
gcc < 3.1. The second bug was tickled when glibc-2-2-branch
was used to build gcc 3.1. In that case, one ended up with
a libgcc_s.so.1 which has an unversioned symbol for __divdi3.
I would suggest you install binutils 2.13.90.0.4 and rebuild
gcc 3.1. You can check if this is the issue by doing...
[howarth@entropy howarth]$ objdump --dynamic-sym /lib/libgcc_s.so.1 | grep __divdi3
0000262c g DF .text 000000dc GLIBC_2.0 __divdi3
and making sure that you have GLIBC_2.0 for the versioning
on __divdi3.
Also you should check...
[howarth@entropy howarth]$ objdump --dynamic-sym /lib/libc.so.6 | grep __divdi3
0001bcf8 g DF .text 00000070 (GLIBC_2.0) __divdi3
as well.
Ulrich, I think we should add something to both the
documentation in glibc trunk and glibc-2-2-branch that states
on ppc that...
1) glibc must Depends or Requires binutils 2.13.90.0.4
2) gcc-3.2 must Build-Depends or Build-Requires binutils 2.13.90.0.4
The first if due to the binutils bug...
http://sources.redhat.com/ml/binutils/2002-08/msg00180.html
http://sources.redhat.com/ml/binutils/2002-08/msg00175.html
...while the second was caused by this binutils bug...
http://sources.redhat.com/ml/binutils/2002-08/msg00217.html
http://sources.redhat.com/ml/binutils/2002-08/msg00221.html
Jack
More information about the Libc-alpha
mailing list