-
Notifications
You must be signed in to change notification settings - Fork 73
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Set SONAME on created libraries #190
Comments
Hi @incaseoftrouble. Thanks for investigating. I know some people have had at least partial success with |
Well, here's the problem, I have no idea how it works exactly. Even after patching with patchelf I managed to load all libraries but prism then later on still failed with an unsatisfied link error (or maybe I did something wrong). Neither do I know whether this would break anything, unfortunately. Maybe some other contributor knows more about these things? |
Something to do with shared libraries depending on each other? The reason for my second question was that I found this, which (I think) worked for someone else previously: davexparker@5280e78. |
Yes, let me try to explain what I think I understood: If loading via Loading via So I added the SONAME via the patch, but prism loads via I just openend this issue, since I think it might be the "proper" way to do it (lpsolve for example has SONAME set). |
After some debugging (I'm trying to load prism's libraries without messing with
LD_LIBRARY_PATH
throughSystem.load
), I noticed that prism's shared libraries are created without SONAME, which causes issues on linux.To fix this problem, one would need to add
-Wl,-soname,$(LIBPREFIX)dd$(LIBSUFFIX)
to$(LDFLAGS)
when building for linux. I'm currently hacking this issue by runningpatchelf
.I'm not an expert on anything C / C++ related, so this might be a bad idea, but as far as I understood, doing so is recommended.
The text was updated successfully, but these errors were encountered: