-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
rpath errors #17602
Comments
Sounds like those libraries need to have their rpaths fixed. |
Might be related. |
Do we need these rpath changes for 0.5? I suspect I read it is necessary but can't recollect. If not, perhaps best to revert for now and fix after branching. |
We can add back the rpath to executable, but we shouldn't revert the entirety of the rpath changes. |
Libraries with failures above: libopenspecfun, libfftw3f, libopenlibm. So we should be in a position to fix these libraries' rpaths without having to argue to much with upstream (since we are upstream). |
These rpath fixes have to be in the julia build - not in the upstream (even though it is us). |
If someone can tell me how to reproduce the issues, I might be able to help fix. |
Ok, fftw3_threads seems to be accidentally setting RUNPATH instead of RPATH, which doesn't make much sense AFAIK, since it's not an executable. May need a patch to FFTW. openspecfun needs an appropriate addition to it's link line, which is the following patch and the referenced PR to openspecfun.
|
I'll put up a quick fix to add the rpath to both libraries after the fact. |
Hmm, after doing some more research, the RUNPATH setting in fftw should actually be fine (contrary to what the dlopen man page says). I was also unable to reproduce the error seen on CI wrt fftw. |
Do you have a system copy of fftw installed? I think it's likely that Travis VM's do, as a dependency of something else that they have installed by default. |
We can always uninstall the system one on travis before doing julia stuff. |
I'm actually not sure how to get Travis to uninstall things in the docker container, since we can't do sudo and all apt-get operations have to go through the |
PR incoming (if just openspecfun isn't enough to get this working better, we can reopen) |
from #17602 (comment) but with RPATH_ESCAPED_ORIGIN not cut off
@tkelman Yes, you're correct. I had a global fftw installed. Still, I can't reproduce the fftw failure. I guess we'll see if it happens again on CI, but it definitely doesn't seem as straightforward as "missing rpath" since it does have RUNPATH set. |
maybe runpath is buggy back with ubuntu 12.04 toolchains? we're using the ubuntu-toolchain-r-test ppa's gcc-5 package, but dunno if that rebuilds binutils or other core things. |
It looks like fftw is missing the "I have the string $ORIGIN in my -rpath" flag (the
|
also, not sure that libmpfr is built correctly, since it's missing rpath link to ensure we load the right libgmp:
|
Apparently the documentation for |
should hopefully fix JuliaLang#17602 rpath issues
from JuliaLang#17602 (comment) but with RPATH_ESCAPED_ORIGIN not cut off
Adding this to the build milestone as it seems this means our binaries are unreliable? Libraries that seem to be missing
|
x-ref #18106 |
propose a fix now or it's not holding up 0.5.0. |
IIUC from the travis failures, this would manifest as opening the wrong ssl library (causing mysterious failures in Pkg) and gmp (from mpfr, for BigFloat support). The fix is to run patchelf on the libraries or pass |
As a PR if you know what's wrong, unless the issue is reliably reproducible. |
When building 0.5 on a cluster, I get that
and
Is that related to this issue? |
It seems this has been worked around enough that it's no longer high priority? |
Should we have a final pass in the |
Is this really a 1.0 blocker? How would fixing this break user code? |
Would be great to fix in 1.0, but not a blocker. |
I believe we reliably set RPATH on all the libraries now. Please reopen if necessary. |
It seems like the recent rpath change may need to be reverted as it is causing frequent travis failures (usually with openspecfun, but also fftw):
https://travis-ci.org/JuliaLang/julia/jobs/146885109
https://travis-ci.org/JuliaLang/julia/jobs/146808597
https://travis-ci.org/JuliaLang/julia/jobs/146806235
https://travis-ci.org/JuliaLang/julia/jobs/146773370
https://travis-ci.org/JuliaLang/julia/jobs/146412731
https://travis-ci.org/JuliaLang/julia/jobs/145955397
The text was updated successfully, but these errors were encountered: