Subject: bug in binutils 2.11.90.0.31 strip ?

From: Ryan Murray <[email-masked]>
Date: Sat, 6 Oct 2001 19:35:51 -0700

I'm running into a problem while building gcc 3.0 from 010922.

The built libobjc.so.1.0.0 is fine until stripped:

before strip:

libobjc.so.1.0.0:     file format elf32-tradlittlemips

Program Header:
0x70000000 off    0x000000b4 vaddr 0x000000b4 paddr 0x000000b4 align 2**2
         filesz 0x00000018 memsz 0x00000018 flags r--
    LOAD off    0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**12
         filesz 0x0001a440 memsz 0x0001a440 flags r-x
    LOAD off    0x0001a440 vaddr 0x0005a440 paddr 0x0005a440 align 2**12
         filesz 0x00000b30 memsz 0x00000b90 flags rw-
 DYNAMIC off    0x000000cc vaddr 0x000000cc paddr 0x000000cc align 2**2
         filesz 0x00003621 memsz 0x00003621 flags rwx

after strip:

libobjc.so.1.0.0:     file format elf32-tradlittlemips

Program Header:
0x70000000 off    0x000000b4 vaddr 0x000000b4 paddr 0x000000b4 align 2**2
         filesz 0x00000018 memsz 0x00000018 flags r--
    LOAD off    0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**4
         filesz 0x0001a440 memsz 0x0001a440 flags r-x
    LOAD off    0x0001a440 vaddr 0x0005a440 paddr 0x0005a440 align 2**4
         filesz 0x00000b30 memsz 0x00000b90 flags rw-
 DYNAMIC off    0x000000cc vaddr 0x000000cc paddr 0x000000cc align 2**2
         filesz 0x00003621 memsz 0x00003621 flags rwx

The change in alignment in the newly-stripped library makes it unusable.

This happens on both big endian and little endian targets.

-- 
Ryan Murray, Debian Developer ([email-masked], [email-masked])
The opinions expressed here are my own.