-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Installation is broken when custom relative libdir path starts with lib/ or when libdir is changed during installation #28627
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
Comments
I think this is a dup of #22831 - the latter was closed due to "inactivity", and I couldn't find the button to reopen it :/ |
Anyone with commit can re-open it, if you're interested in reviving the PR, @anguslees , I'd be happy to do so |
@steveklabnik: #22831 doesn't fix this problem in general. I even doubt that it will work (cause it fixies installation, but I'm not sure that it will not break compilation). And anyway it does not address the problem No. 2 -- broken installation when libdir is changed in the install phase. What I think we should do now is removing of |
My current preferred solution is to simply remove the --libdir option from rust-installer since it is so broken. That would leave the working case where --libdir is specified to the configure script, but make it uncustomizable at install-time with the normal installers. Then we'll just wait until somebody complains hard about needing the installer to actually be able to do this customization. |
My understanding is that packaging has moved significantly forward in the 17 months since this bug has been commented on, and including gentoo: https://wiki.gentoo.org/wiki/Project:Rust As such, I'm gonna assume this is stale, and give it a close. If not, please open a new bug. Thanks! |
Gentoo uses installation of multiple rust versions side by side based on the possibility to install libraries to custom locations. At the moment because of this bug (its first part) we need to apply patch.
Steps to reproduce bug.
Case when custom libdir works
We are installing to
/home/jauhien/w/image-working
, libraries go to/home/jauhien/w/image-working/customrust
.Configure rust
Make rust
Have some coffee or tea.
Install rust
Rust is installed and works. Libraries go to
/home/jauhien/w/image-working/customrust
as expected.Case when custom libdir leads to failure (bug)
We are going to install rust into
/home/jauhien/w/image
, libraries will go to/home/jauhien/w/image/lib/customrust
../configure --prefix=/home/jauhien/w/image --libdir=/home/jauhien/w/image/lib/customrust --disable-debug --disable-valgrind --disable-helgrind --disable-valgrind-rpass --enable-debuginfo-tests --disable-llvm-assertions --disable-debug-assertions --disable-debug-jemalloc --disable-debuginfo
Steps 2 and 3 as in the previous case.
Result: libraries are installed in
/home/jauhien/w/image/lib/customrust/customrust
. Note thecustomrust
being repeated twice. Reason: lines in installer removed by mentioned patch.Changing libdir during installation is broken
Libdir option for installer makes no sense as it is anyway broken.
Working installation using unchanged libdir
Download rust binary tarball for your arch and unpack it.
Install rust
Try if it works
Broken installation when libdir option is used
As in previous case
Install rust
Try if it works
Reason: relative libdir path is captured by rust compiler during build and it is impossible to change it later.
The text was updated successfully, but these errors were encountered: