make check fails on i686-linux-gnu

Andreas Jaeger aj@suse.de
Wed Sep 18 05:49:00 GMT 2002


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



More information about the Binutils mailing list