This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
make check fails on i686-linux-gnu
- From: Andreas Jaeger <aj at suse dot de>
- To: binutils at sources dot redhat dot com
- Date: Wed, 18 Sep 2002 09:45:44 +0200
- Subject: make check fails on i686-linux-gnu
With CVS mainline I see these failures on i686-linux-gnu with GCC 3.2:
Version /builds/sourceware-src/build-binutils-ln/binutils/objcopy 20020918
FAIL: objcopy (simple copy)
FAIL: objcopy -O srec
FAIL: objcopy --set-start
FAIL: objcopy --adjust-start
FAIL: objcopy --adjust-vma
FAIL: objcopy --adjust-section-vma +
FAIL: objcopy --adjust-section-vma =
FAIL: strip
FAIL: strip with saving a symbol
Running /cvs/src-binutils/src/binutils/testsuite/binutils-all/objdump.exp ...
Version /builds/sourceware-src/build-binutils-ln/binutils/objdump 20020918
FAIL: objdump -r
Looking at the log file I see:
Executing on host: /builds/sourceware-src/build-binutils-ln/binutils/objcopy --version (timeout = 300)
GNU objcopy 2.13.90 20020918
Copyright 2002 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License. This program has absolutely no warranty.
Version /builds/sourceware-src/build-binutils-ln/binutils/objcopy 20020918
Executing on host: /builds/sourceware-src/build-binutils-ln/gas/as-new /cvs/src-binutils/src/binutils/testsuite/binutils-all/bintest.s -o tmpdir
/bintest.o (timeout = 300)
/builds/sourceware-src/build-binutils-ln/binutils/objcopy tmpdir/bintest.o tmpdir/copy.o
Executing on host: /builds/sourceware-src/build-binutils-ln/binutils/objcopy tmpdir/bintest.o tmpdir/copy.o (timeout = 300)
BFD: tmpdir/bintest.o(.text): relocation 0 has invalid symbol index 7
BFD: tmpdir/bintest.o(.text): relocation 0 has invalid symbol index 7
FAIL: objcopy (simple copy)
/builds/sourceware-src/build-binutils-ln/binutils/objcopy -O srec tmpdir/bintest.o tmpdir/copy.srec
Executing on host: /builds/sourceware-src/build-binutils-ln/binutils/objcopy -O srec tmpdir/bintest.o tmpdir/copy.srec (timeout = 300)
BFD: tmpdir/bintest.o(.text): relocation 0 has invalid symbol index 7
BFD: tmpdir/bintest.o(.text): relocation 0 has invalid symbol index 7
Readelf and objdump looks sane to me:
$ readelf -s tmpdir/bintest.o
Symbol table '.symtab' contains 10 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000000 0 SECTION LOCAL DEFAULT 1
2: 00000000 0 SECTION LOCAL DEFAULT 3
3: 00000000 0 SECTION LOCAL DEFAULT 4
4: 00000000 0 NOTYPE LOCAL DEFAULT 1 static_text_symbol
5: 00000000 0 NOTYPE LOCAL DEFAULT 3 static_data_symbol
6: 00000000 0 NOTYPE GLOBAL DEFAULT 1 text_symbol
7: 00000000 0 NOTYPE GLOBAL DEFAULT UND external_symbol
8: 00000000 0 NOTYPE GLOBAL DEFAULT 3 data_symbol
9: 00000004 4 OBJECT GLOBAL DEFAULT COM common_symbol
$ objdump -dr tmpdir/bintest.o
tmpdir/bintest.o: file format elf32-i386
Disassembly of section .text:
00000000 <text_symbol>:
0: 01 00 add %eax,(%eax)
2: 00 00 add %al,(%eax)
4: 00 00 add %al,(%eax)
4: R_386_32 external_symbol
...
What's going on here?
Andreas
--
Andreas Jaeger
SuSE Labs aj@suse.de
private aj@arthur.inka.de
http://www.suse.de/~aj