Summary: | app-emulation/emul-linux-x86-baselibs installs broken "libs" in /usr/lib when SYMLINK_LIB=no (pointing to /lib32 instead of /lib) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Georgi Georgiev <chutz+bugs.gentoo.org> |
Component: | [OLD] Library | Assignee: | Multilib team <multilib+disabled> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | tetromino |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Georgi Georgiev
2014-03-04 14:27:45 UTC
Which profile is this? Something that Gentoo provides, or your own custom profile? Please attach the output of "emerge --info". After thinking further, it seems that app-emulation/emul-linux-x86-* ebuild are fundamentally incompatible with your profile: 1. All pkgconfig files are going to contain paths with /lib32 or /usr/lib32 in them; 2. All plugins (e.g. for alsa, gdk-pixbuf, pango, pulseaudio, etc.) will be loaded (or in your case, will fail to load) from hard-coded directories under /usr/lib32; 3. Various binaries provided in emul-linux-x86-* have rpaths under /usr/lib32 Fixing all of that would be a lot of work and the result would be very fragile. If you want to change the filesystem layout from Gentoo's defaults, instead of pre-compiled binaries from app-emulation/emul-linux-x86-*, you will probably need to use native multilib ebuilds (you will need to switch to unstable ACCEPT_KEYWORDS and set ABI_X86="32 64" in make.conf). (In reply to Alexandre Rostovtsev from comment #2) > After thinking further, it seems that app-emulation/emul-linux-x86-* ebuild > are fundamentally incompatible with your profile: > > 1. All pkgconfig files are going to contain paths with /lib32 or /usr/lib32 > in them; > 2. All plugins (e.g. for alsa, gdk-pixbuf, pango, pulseaudio, etc.) will be > loaded (or in your case, will fail to load) from hard-coded directories > under /usr/lib32; > 3. Various binaries provided in emul-linux-x86-* have rpaths under /usr/lib32 > > Fixing all of that would be a lot of work and the result would be very > fragile. > > If you want to change the filesystem layout from Gentoo's defaults, instead > of pre-compiled binaries from app-emulation/emul-linux-x86-*, you will > probably need to use native multilib ebuilds (you will need to switch to > unstable ACCEPT_KEYWORDS and set ABI_X86="32 64" in make.conf). Okay, you reasoning makes sense and you are offering a reasonable alternative. Thanks. Feel free to reject this ticket. Regarding the profile (just to wrap it up); it inherits the following: default/linux/amd64/13.0/desktop/gnome/systemd features/multilib And the custom part looks like this: > grep -T . *.* make.defaults :SYMLINK_LIB="no" package.mask :# Kill everything that uses ruby20 - too broken package.mask :=dev-lang/ruby-2.0* package.mask :=virtual/rubygems-6 package.mask :=virtual/ruby-ssl-3 package.use.mask :sys-apps/acl -nfs use.mask :ruby_targets_ruby20 And I am using paludis so "emerge --info" would be irrelevant. (In reply to Alexandre Rostovtsev from comment #2) > > If you want to change the filesystem layout from Gentoo's defaults, instead > of pre-compiled binaries from app-emulation/emul-linux-x86-*, you will > probably need to use native multilib ebuilds (you will need to switch to > unstable ACCEPT_KEYWORDS and set ABI_X86="32 64" in make.conf). I just want to confirm that the native multilib works really well. Thank you! I did have to keyword a lot of packages, and I also had to unmask the abi_x86_32 flag for even more packages (they had it masked in profiles/default/linux/amd64/13.0/package.use.stable.mask). But once that was done, it worked GREAT! Thanks. |