Skip to content
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

Improve consistency of SONAME usage, fix debug installation #39009

Merged
merged 2 commits into from
Dec 27, 2020

Conversation

staticfloat
Copy link
Member

SONAME and RPATH inconsistency resulted in julia/julia-debug
occasionally being unable to find libjulia.so, due to
libjulia-internal not having the right RPATH set (it was set to
$ORIGIN:$ORIGIN/julia, when it now needs to be set to
$ORIGIN:$ORIGIN/..). Use patchelf to address this during make install.

We also want to use the SONAME of e.g. libjulia as much as possible,
so as to avoid searching the filesystem for libraries that are already
opened.

Also fix a few bugs in building julia-debug.

SONAME and RPATH inconsistency resulted in `julia`/`julia-debug`
occasionally being unable to find `libjulia.so`, due to
`libjulia-internal` not having the right RPATH set (it was set to
`$ORIGIN:$ORIGIN/julia`, when it now needs to be set to
`$ORIGIN:$ORIGIN/..`).  Use `patchelf` to address this during `make
install`.

We also want to use the SONAME of e.g. `libjulia` as much as possible,
so as to avoid searching the filesystem for libraries that are already
opened.

Also fix a few bugs in building `julia-debug`.
@staticfloat staticfloat requested a review from vtjnash December 26, 2020 23:48
@staticfloat
Copy link
Member Author

@GunnarFarneback see if this fixes the issues you were having with dlopen("libjulia").

@KristofferC
Copy link
Member

Should be backported?

@staticfloat staticfloat added the backport 1.6 Change should be backported to release-1.6 label Dec 27, 2020
@KristofferC KristofferC mentioned this pull request Dec 27, 2020
26 tasks
@GunnarFarneback
Copy link
Contributor

Yes, this solves the problem noted in #38950 (comment) on Ubuntu.

@vtjnash vtjnash merged commit 471a55e into master Dec 27, 2020
@vtjnash vtjnash deleted the sf/dlopen_libjulia branch December 27, 2020 18:02
@vtjnash
Copy link
Member

vtjnash commented Dec 27, 2020

I don't know if this covers all of the dlopen cases, but looks like it should help many cases.

@GunnarFarneback
Copy link
Contributor

This(*) solved the macos failure for the DynamicallyLoadedEmbedding tests on nightly. Windows still remains broken though, https://github.com/GunnarFarneback/DynamicallyLoadedEmbedding.jl/runs/1616727928.

(*) Or possibly some other PR of the last few days, but I guess this is the most likely one.

@KristofferC KristofferC removed the backport 1.6 Change should be backported to release-1.6 label Jan 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants