-
Notifications
You must be signed in to change notification settings - Fork 184
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Explicitly use the GNU binutils ld.bfd linker [13.0.x] #8391
Explicitly use the GNU binutils ld.bfd linker [13.0.x] #8391
Conversation
backport #8382 |
please test |
A new Pull Request was created by @fwyzard (Andrea Bocci) for branch IB/CMSSW_13_0_X/master. @smuzaffar, @aandvalenzuela, @iarspider can you please review it and eventually sign? Thanks.
|
+1 Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-58f626/31339/summary.html Comparison SummarySummary:
|
+externals @cms-sw/orp-l2 , feel free to include it for next 13.0.X release |
This pull request is fully signed and it will be integrated in one of the next IB/CMSSW_13_0_X/master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @perrotta, @dpiparo, @rappoccio (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
As we configure them, gcc and clang already use the GNU bfd linker by default (
ld
orld.bfd
, they are the same in our externals).Instead
hipcc
uses its version ofld.lld
by default.This can cause inker problems in some corner cases, for example when linking objects with weak
V
symbols with objects with uniqueu
symbols:ld.bfd
andld.gold
seem to handle that, whileld.lld
fails with a duplicate symbol error.Rather than changing how gcc and clang generate symbols, it looks like the problem can be fixed instructing
hipcc
to use the GNU bfd linker.This improves consistency with the rest of our build system, possibly avoiding other corner cases.
Setting the flag for gcc should propagate automatically to clang and hipcc, making sure all compilers consistently use the same linker.
Backport of #8382 to CMSSW_13_0_X to fix compilation problems with the ROCm backend for Alpaka.