On Mon, 18 May 2020 18:48:56 +0200 Gerrit Kuehn <gerrit.ku...@aei.mpg.de> wrote:
> USE="-static-libs" ABI_X86="32%* (64%*) (-x32)" > > I'm not familiar with the ABI flags (is there any documentation on > that, Google doesn't come up with anything useful for me right now?). > What does the "%" mean, and how would I turn off 32bit completely? I think I made some progress on this and found that my old ebuilds install and search libs in "lib32" paths (see --libdir setting below): --- >>> Configuring source >>> in /var/tmp/portage/x11-misc/printproto-1.0.5-r2/work/printproto-1.0.5 ... * abi_x86_32.x86: running multilib-minimal_abi_src_configure * econf: updating printproto-1.0.5/config.guess with /usr/share/gnuconfig/config.guess * econf: updating printproto-1.0.5/config.sub with /usr/share/gnuconfig/config.sub /var/tmp/portage/x11-misc/printproto-1.0.5-r2/work/printproto-1.0.5/configure --prefix=/usr --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --disable-silent-rules --docdir=/usr/share/doc/printproto-1.0.5-r2 --htmldir=/usr/share/doc/printproto-1.0.5-r2/html --libdir=/usr/lib32 --enable-shared --disable-static --- From https://wiki.gentoo.org/wiki/Project:AMD64/Multilib_layout I understand that 32bit libs should go to /lib and /usr/lib, not to lib32 anymore. I guess this may be the root cause for my ebuild issues?! I see the same with the libXp ebuild: --- >>> Configuring source >>> in /var/tmp/portage/x11-libs/libXp-1.0.3/work/libXp-1.0.3 ... * abi_x86_32.x86: running multilib-minimal_abi_src_configure * econf: updating libXp-1.0.3/config.guess with /usr/share/gnuconfig/config.guess * econf: updating libXp-1.0.3/config.sub with /usr/share/gnuconfig/config.sub /var/tmp/portage/x11-libs/libXp-1.0.3/work/libXp-1.0.3/configure --prefix=/usr --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --disable-silent-rules --docdir=/usr/share/doc/libXp-1.0.3 --htmldir=/usr/share/doc/libXp-1.0.3/html --with-sysroot=/ --libdir=/usr/lib32 --disable-selective-werror --enable-shared --disable-static --- This probably makes it look into /usr/lib32 for dependent 32bit libraries like libXau and so on that it complains about not finding them later. Indeed, these are to be found in /usr/lib, not /usr/lib32. But why doesn't emerge (or multilib-minimal_abi_src_configure) know about this and doesn't "do the right thing"? I looked into other X lib ebuilds like libXext-1.3.4.ebuild. This is installing 32bit libs into the correct directory, but it looks not different to me. I updated my ebuild to using EAPI=7 and xorg-3 (instead of the original EAPI=5 and xorg-2), but it still insists on using lib32 paths. Any further hints would be really appreciated. cu Gerrit