-
Notifications
You must be signed in to change notification settings - Fork 13.3k
etc: Fix install script for rpath removal #15550
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
Conversation
This adds detection of the relevant LD_LIBRARY_PATH-like environment variable and appropriately sets it when testing whether binaries can run or not. Additionally, the installation prints a recommended value if one is necessary.
This is a good idea, but it does not solve the problem for The reason: The technique that it is using to test whether an installed The subtle detail here that I am trying to stress is that when the current working directory is the build directory, then all the build products work, despite being moved to the target install directory. (The observation in the prior paragraph strikes me as a potential footgun, potentially worse than rpath itself; I do not understand the logic that the dynamic library loader is using. Maybe we should be using absolute paths rather than relative ones in the binary that we emit?) Anyway, here is the transcript: https://gist.github.com/pnkfelix/8cfa7a8506023f7f1154 In particular, compare this line: (where in the latter all I did was move the current working directory up to the parent of the build tree.) And of course, note that when I ran Again, I approve of the spirit of this patch, and was close to r+'ing it on that basis. But at this point it does not solve the problem at hand. |
This is needed to unblock a snapshot, it may lead to not printing something on OSX, but this is holding back the linux snapshot if it doesn't get merged. |
In @pnkfelix's first example, I don't understand why |
It appears that OSX has a hardcoded path to the library as the last fallback:
I believe it's using these hardcoded paths as the last fallback because nothing is found in |
This reverts the promotion from line-comment to doc-comment in 4989a56 to fix the compiler-docs target. Closes rust-lang#15553
This adds detection of the relevant LD_LIBRARY_PATH-like environment variable and appropriately sets it when testing whether binaries can run or not. Additionally, the installation prints a recommended value if one is necessary. Closes #15545
Linux nightly still does not compile with an error about libnative :( http://buildbot.rust-lang.org/builders/nightly-linux/builds/28 It fails on distcheck. |
That should be fixed by #15578 |
This adds detection of the relevant LD_LIBRARY_PATH-like environment variable
and appropriately sets it when testing whether binaries can run or not.
Additionally, the installation prints a recommended value if one is necessary.
Closes #15545