yann@1: See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=156841 yann@1: yann@1: Here's the error I got before I applied the patch: yann@1: yann@1: /home3/dank/crosstool-0.5/result/alpha-unknown-linux-gnu/gcc-3.2.3-glibc-2.2.5/lib/gcc-lib/alpha-unknown-linux-gnu/3.2.3/../../../../alpha-unknown-linux-gnu/bin/ld: /home3/dank/crosstool-0.5/build/alpha-unknown-linux-gnu/gcc-3.2.3-glibc-2.2.5/build-glibc/libc_pic.os: pc-relative relocation against dynamic symbol __divlu yann@1: /home3/dank/crosstool-0.5/result/alpha-unknown-linux-gnu/gcc-3.2.3-glibc-2.2.5/lib/gcc-lib/alpha-unknown-linux-gnu/3.2.3/../../../../alpha-unknown-linux-gnu/bin/ld: /home3/dank/crosstool-0.5/build/alpha-unknown-linux-gnu/gcc-3.2.3-glibc-2.2.5/build-glibc/libc_pic.os: pc-relative relocation against dynamic symbol __divqu yann@1: /home3/dank/crosstool-0.5/result/alpha-unknown-linux-gnu/gcc-3.2.3-glibc-2.2.5/lib/gcc-lib/alpha-unknown-linux-gnu/3.2.3/../../../../alpha-unknown-linux-gnu/bin/ld: /home3/dank/crosstool-0.5/build/alpha-unknown-linux-gnu/gcc-3.2.3-glibc-2.2.5/build-glibc/libc_pic.os: pc-relative relocation against dynamic symbol __remlu yann@1: /home3/dank/crosstool-0.5/result/alpha-unknown-linux-gnu/gcc-3.2.3-glibc-2.2.5/lib/gcc-lib/alpha-unknown-linux-gnu/3.2.3/../../../../alpha-unknown-linux-gnu/bin/ld: /home3/dank/crosstool-0.5/build/alpha-unknown-linux-gnu/gcc-3.2.3-glibc-2.2.5/build-glibc/libc_pic.os: pc-relative relocation against dynamic symbol __remqu yann@1: collect2: ld returned 1 exit status yann@1: make[1]: *** [/home3/dank/crosstool-0.5/build/alpha-unknown-linux-gnu/gcc-3.2.3-glibc-2.2.5/build-glibc/libc.so] Error 1 yann@1: yann@1: yann@1: --- glibc-2.2.5/sysdeps/alpha/divrem.h 6 Jul 2001 04:55:45 -0000 1.8 yann@1: +++ glibc-2.2.5/sysdeps/alpha/divrem.h 15 Jun 2002 20:53:37 -0000 1.9 yann@1: @@ -1,4 +1,4 @@ yann@1: -/* Copyright (C) 1996, 1997 Free Software Foundation, Inc. yann@1: +/* Copyright (C) 1996,97,2002 Free Software Foundation, Inc. yann@1: Contributed by David Mosberger (davidm@cs.arizona.edu). yann@1: This file is part of the GNU C Library. yann@1: yann@1: @@ -86,6 +86,7 @@ yann@1: yann@1: .align 3 yann@1: UFUNC_NAME: yann@1: +$udiv_entry: yann@1: lda sp, -STACK(sp) yann@1: .frame sp, STACK, retaddr, 0 yann@1: #ifdef PROF yann@1: @@ -206,7 +207,7 @@ yann@1: cmovge AT, AT, arg2 yann@1: yann@1: /* Do the unsigned division. */ yann@1: - bsr retaddr, UFUNC_NAME yann@1: + bsr retaddr, $udiv_entry yann@1: yann@1: /* Restore originals and adjust the sign of the result. */ yann@1: ldq arg1, 0(sp)