[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/19480] [2.26.51 regression] ld creates wrong output for libstdc+
From: |
steve at sk2 dot org |
Subject: |
[Bug ld/19480] [2.26.51 regression] ld creates wrong output for libstdc++6.dll for mingw32 (32-bit) |
Date: |
Sat, 19 Mar 2016 14:32:59 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=19480
--- Comment #6 from Stephen Kitt <steve at sk2 dot org> ---
Hi Nick,
> First of all, please try out the patch that I am about to upload. It may be
> that the problem is that the linker is garbage collecting sections that are
> really needed, because the linker script failed to mark those sections as
> KEEP. (You may need to check that the linker script you are using is the one
> that is fixed by the uploaded patch. Add -Wl,--verbose to the gcc command
> line to check this).
The only difference I see is that the exception tables are preserved with 2.26
and your patch. I'm attaching the logs of two builds with --verbose and
--print-gc-sections, one with ld 2.25.90.20151209 (the version where we saw
this starting) and one with ld 2.26 and your patch.
> If that does not work then try adding -Wl,--print-gc-sections to the bad DLL
> creation command line. See what gets thrown away, see if this matches up with
> the undefined symbols, and try to work out why they are being thrown away.
There are a lot of sections being thrown away, and they do match the undefined
symbols. I haven't figured out why they're being thrown away yet.
Regards,
Stephen
--
You are receiving this mail because:
You are on the CC list for the bug.