Bug 2119380
Summary: | binutils not working correctly with "clang -flto" | |||
---|---|---|---|---|
Product: | Red Hat Enterprise Linux 8 | Reporter: | Jesus Checa <jchecahi> | |
Component: | binutils | Assignee: | Nick Clifton <nickc> | |
binutils sub component: | system-version | QA Contact: | Miloš Prchlík <mprchlik> | |
Status: | CLOSED ERRATA | Docs Contact: | Jacob Taylor Valdez <jvaldez> | |
Severity: | unspecified | |||
Priority: | unspecified | CC: | fweimer, mprchlik, nickc, ohudlick, sipoyare | |
Version: | 8.7 | Keywords: | Bugfix, Triaged | |
Target Milestone: | rc | |||
Target Release: | --- | |||
Hardware: | Unspecified | |||
OS: | Unspecified | |||
Whiteboard: | ||||
Fixed In Version: | binutils-2.30-119.el8 | Doc Type: | No Doc Update | |
Doc Text: | Story Points: | --- | ||
Clone Of: | ||||
: | 2119383 2120959 (view as bug list) | Environment: | ||
Last Closed: | 2023-05-16 08:45:00 UTC | Type: | Bug | |
Regression: | --- | Mount Type: | --- | |
Documentation: | --- | CRM: | ||
Verified Versions: | Category: | --- | ||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
Cloudforms Team: | --- | Target Upstream Version: | ||
Embargoed: | ||||
Bug Depends On: | ||||
Bug Blocks: | 2119383, 2120959 |
Description
Jesus Checa
2022-08-18 13:43:53 UTC
Right - I have found the problem. There is a bug in the BFD library. It does automatically load a plugin when needed, but it looks in the wrong place for it: # strace nm foo.o |& grep plugin openat(AT_FDCWD, "/usr/bin/../bin/../lib/bfd-plugins", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (No such file or directory) The LLVMgold.so plugin is in the /usr/lib64/bfd-plugins directory not the /usr/lib/bfd-plugins directory. Fixed in binutils-2.30-119.el8 [root@ci-vm-10-0-139-112 ~]# rpm -q binutils binutils-2.30-119.el8.x86_64 [root@ci-vm-10-0-139-112 ~]# echo "void lto_function(){}" | clang -flto -O2 -c -x c -o foo.o - [root@ci-vm-10-0-139-112 ~]# nm foo.o 00000000 T lto_function [root@ci-vm-10-0-139-112 ~]# ar crs foo.a foo.o [root@ci-vm-10-0-139-112 ~]# readelf -c foo.a Index of archive foo.a: (1 entries, 0xe bytes in the symbol table) Contents of binary foo.a(foo.o) at offset 0x5a lto_function [root@ci-vm-10-0-139-112 ~]# Verified with binutils-2.30-119.el8 Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (binutils bug fix and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2023:2949 |