[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/26223] New: regression: ld now fails to take an executable as in
From: |
mjt at tls dot msk.ru |
Subject: |
[Bug ld/26223] New: regression: ld now fails to take an executable as input |
Date: |
Thu, 09 Jul 2020 15:08:42 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=26223
Bug ID: 26223
Summary: regression: ld now fails to take an executable as
input
Product: binutils
Version: 2.35
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: ld
Assignee: unassigned at sourceware dot org
Reporter: mjt at tls dot msk.ru
Target Milestone: ---
Apparently since this commit:
commit a87e1817a435dab6c6c042f9306497c9f13d4236
Author: Nick Clifton <nickc@redhat.com>
Date: Thu May 28 17:43:21 2020 +0100
Have the linker fail if any attempt to link in an executable is made.
PR 26047
* ldelf.c (ldelf_after_open): Fail if attempting to link one
executable into another. Ensure that the test is made for all
forms of linking.
ld fails to build, for example, seabios, which is a bios/firmware for x86
platform and needs to have 16bit startup code.
Current seabios source tarball available for download from
https://www.seabios.org/downloads/seabios-1.13.0.tar.gz
(it is a relatively small self-contained project), here's
the relevant output:
seabios-1.13.0 $ make silentoldconfig
seabios-1.13.0 $ make V=1 PYTHON=python3
...
Linking out/rom16.o
ld -T out/romlayout16.lds out/code16.o -o out/rom16.o
Stripping out/rom16.strip.o
strip out/rom16.o -o out/rom16.strip.o
Linking out/rom.o
ld -N -T out/romlayout32flat.lds out/rom16.strip.o out/rom32seg.strip.o
out/code32flat.o -o out/rom.o
ld: cannot use executable file 'out/rom16.strip.o' as input to a link
make: *** [Makefile:187: out/rom.o] Error 1
seabios-1.13.0 $ _
Previous versions of ld accepted this file just fine
and produced valid out/bios.bin in the end.
Might be it is possible to change seabios in a way to not require linking an
executable into executable, I dunno. The whole firmware build thing is always
somewhat funny..
Thanks,
/mjt
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug ld/26223] New: regression: ld now fails to take an executable as input,
mjt at tls dot msk.ru <=