Hi,
I'm trying to build glibc-2.3.1 , with a slight patch, for mips on
repeat.r.o, in unstable. The patch is a simple one (works on i386) to
include libpthreads.a in the libc6-pic package -- no changes to code.
However building glibc-2.3.1 fails, which is puzzling: the breakage is
in the assembler step, and may be binutils-related: I think that
glibc-2.3.1-16 was built with the previous binutils:
according to the buildd logs:
glibc-2.3.1-16 was built March 22
binutils_2.13.90.0.18-1.3 was built March 22
gcc-3.2_1:3.2.3ds5-0pre6 was built March 17
Can anyone verify, by building glibc-2.3.1 on a system with the new &
old binutils; or temporarily install the old binutils on repeat unstable
chroot so I can test?
Alternatively, does anyone have a better explanation?
The exact error was:
gcc-3.2 ../sysdeps/unix/sysv/linux/mips/clone.S -c -I../include -I.
-I/home/mckinstry/glibc-2.3.1/mipsel-linux/obj/misc -I.. -I../libio
-I/home/mckinstry/glibc-2.3.1/mipsel-linux/obj -I../sysdeps/mips/elf
-I../linuxthreads/sysdeps/unix/sysv/linux
-I../linuxthreads/sysdeps/pthread -I../sysdeps/pthread
-I../linuxthreads/sysdeps/unix/sysv -I../linuxthreads/sysdeps/unix
-I../linuxthreads/sysdeps/mips -I../sysdeps/unix/sysv/linux/mips
-I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common
-I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../sysdeps/unix/sysv
-I../sysdeps/unix/mips -I../sysdeps/unix -I../sysdeps/posix
-I../sysdeps/mips/mipsel -I../sysdeps/mips/fpu -I../sysdeps/mips
-I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32
-I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754
-I../sysdeps/generic/elf -I../sysdeps/generic -nostdinc -isystem
/usr/lib/gcc-lib/mipsel-linux/3.2.3/include -isystem
/usr/src/kernel-headers-2.4.19/include -D_LIBC_REENTRANT -include
../include/libc-symbols.h -DPIC -DASSEMBLER -o
/home/mckinstry/glibc-2.3.1/mipsel-linux/obj/misc/clone.o
../sysdeps/unix/sysv/linux/mips/clone.S: Assembler messages:
../sysdeps/unix/sysv/linux/mips/clone.S:66: Error: Can not represent
BFD_RELOC_16_PCREL_S2 relocation in this object file format
make[3]: *** [/home/mckinstry/glibc-2.3.1/mipsel-linux/obj/misc/clone.o]
Error 1
make[3]: Leaving directory
`/home/mckinstry/glibc-2.3.1/glibc-2.3.1/misc'
make[2]: *** [misc/subdir_lib] Error 2
make[2]: Leaving directory `/home/mckinstry/glibc-2.3.1/glibc-2.3.1'
make[1]: *** [install] Error 2
And the patch I made:
--- glibc-2.3.1/debian/packages.d/libc-pic.mk 2003-03-28
09:11:25.000000000 +0000
+++ glibc-2.3.1.new/debian/packages.d/libc-pic.mk 2003-03-27
23:23:23.000000000 +0000
@@ -13,6 +13,9 @@
$(INSTALL_DATA) $(objdir)/libm.map
$(tmpdir)/$@$(libdir)/libm_pic.map
$(INSTALL_DATA) $(objdir)/resolv/libresolv_pic.a
$(tmpdir)/$@$(libdir)/.
$(INSTALL_DATA) $(objdir)/libresolv.map
$(tmpdir)/$@$(libdir)/libresolv_pic.map
+ $(INSTALL_DATA) $(objdir)/linuxthreads/libpthread.a
$(tmpdir)/$@$(libdir)/.
+ $(INSTALL_DATA) $(objdir)/libpthread.map
$(tmpdir)/$@$(libdir)/libpthread.map
+
ifeq ($(DEB_HOST_GNU_SYSTEM),gnu)
$(INSTALL_DATA) $(objdir)/hurd/libhurduser_pic.a
$(tmpdir)/$@$(libdir)/.
$(INSTALL_DATA) $(objdir)/mach/libmachuser_pic.a
$(tmpdir)/$@$(libdir)/.
-- Alastair
--
Alastair McKinstry <mckinstry@computer.org>
GPG Key fingerprint = 9E64 E714 8E08 81F9 F3DC 1020 FA8E 3790 9051 38F4
He that would make his own liberty secure must guard even his enemy from
oppression; for if he violates this duty he establishes a precedent that
will reach to himself.
- --Thomas Paine
Attachment:
signature.asc
Description: This is a digitally signed message part