-
-
Notifications
You must be signed in to change notification settings - Fork 470
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
Mold fails to hide dynamic symbols #277
Comments
Sorry about this report, usually when we reach out to other projects we try not to file any "build all of blender" issues, @Blendify got a little trigger happy my apologies. I extracted a minimal repro case below: as you can see below, when linked with ld,
|
I'm happy to fix the issue for Blender. Chances are there are many more programs that see the same issue in their builds. Let me take a look. |
Can confirm the issue has been fixed, thanks again :) |
Mostly fixed, there's one other side case mold missed, but I'll file a separate bug for that one., since it's quite a different beast than this one. |
Environment
OS: Ubuntu 21.10
Mold: 1.0.1 built from main (43b2a1e)
GCC: 11.2.0
I also use ninja
Introduction
Hi, recently Blender added support to our build system however we found that symbols are not being hidden when using mold compared to other linkers.
I have been trying to isolate this down to a small reproducible case
but so far have not been able to create a small project.
I can guide you through building Blender though.
Reproduction Steps
Our build instructions can be found here: https://wiki.blender.org/wiki/Building_Blender/Linux
The easiest way to use MOLD is to enable the CMake option
WITH_LINKER_MOLD
.Once built you can check for a symbol that should be hidden with
nm -D ./blender | grep " T LLVM"
compare this with the results of using a different linker such as enablingWITH_LINKER_LLD
(make sure to disable mold also).You can find our map file in
blender.map
Desired results
nm -D ./blender | grep " T LLVM"
should return nothing.You could also try to run the application, building with mold should result in a crash during the program initialization.
The text was updated successfully, but these errors were encountered: