> /rescue binaries fail with GCC 7, which is why the qemu runs > are failing -- the installer crashes the same. > > it is not static binaries, but something specific to the > crunchgen'd binaries i guess. > > if i can't figure out the crunchgen problem i'll revert the > switch on sparc but others may want to skip SMP kernels on > sparc for now (and i *just* fixed it! argh.)
i'm not very familiar with how this all work, but i have found that it may be a strip or objcopy bug. the "rescue.unstripped" in the rescue objdir runs fine. the program headers are broken in the installed binary. this: Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align LOAD 0x000000 0x00010000 0x00010000 0x66b0f2 0x66b0f2 R E 0x10000 LOAD 0x66c000 0x0068c000 0x0068c000 0x75cd0 0x323240 RW 0x10000 NOTE 0x0000b4 0x000100b4 0x000100b4 0x0002c 0x0002c R 0x4 TLS 0x6ced08 0x006eed08 0x006eed08 0x00000 0x00004 R 0x4 becomes Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align LOAD 0x000000 0x00000000 0x00010000 0x67b0d6 0x67b0d6 R E 0x10000 LOAD 0x67ed08 0x006eed08 0x006eed08 0x12fc8 0x2c0538 RW 0x10000 LOAD 0x69ed08 0x006eed08 0x006eed08 0x00040 0x00040 RW 0x10000 NOTE 0x0100b4 0x000100b4 0x000100b4 0x00018 0x00018 R 0x4 TLS 0x67ed08 0x006eed08 0x006eed08 0x00000 0x00004 R 0x4 the first problem is virtaddr 0x0. this is (default) disallowed (mapping user VA 0), though enabling it causes a later failure. it's something in the objcopy that makes the "stripped" copy. .mrg.