Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 545758

Summary: netsurf.eclass buildsystem-1.3 wrong handling of libdir
Product: Gentoo Linux Reporter: Kobboi <gentoo>
Component: [OLD] UnspecifiedAssignee: Michael Weber (RETIRED) <xmw>
Status: RESOLVED TEST-REQUEST    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Kobboi 2015-04-06 17:56:32 UTC
During the 32-bit compilation of libhubbub, the following appears:

/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libparserutils.so when searching for -lparserutils
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../libparserutils.so when searching for -lparserutils
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libparserutils.so when searching for -lparserutils
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lparserutils

(...)

 * ERROR: net-libs/libhubbub-0.3.1::gentoo failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=net-libs/libhubbub-0.3.1::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=net-libs/libhubbub-0.3.1::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/net-libs/libhubbub-0.3.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/net-libs/libhubbub-0.3.1/temp/environment'.
 * Working directory: '/var/tmp/portage/net-libs/libhubbub-0.3.1/work/libhubbub-0.3.1-abi_x86_32.x86'

It's obvious that this 32-bit libhubbub needs a 32-bit libparserutils and although this appears to be the case to the package manager

$ eix -e libparserutils
[I] dev-libs/libparserutils
     Available versions:  (~)0.1.2 (~)0.2.0-r1 (~)0.2.1 {debug iconv static-libs test ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32"}
     Installed versions:  0.2.1(07:41:50 PM 04/06/2015)(iconv -debug -static-libs -test ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="32 64 -x32")
     Homepage:            http://www.netsurf-browser.org/projects/libparserutils/
     Description:         library for building efficient parsers, written in C

it looks like it isn't: there is only 1 shared library ( /usr/lib/libparserutils.so.0.2.1 ) for which

 $ file /usr/lib/libparserutils.so.0.2.1
/usr/lib/libparserutils.so.0.2.1: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped

so 64-bit only.

If 64-bit is all you care about, what currently does work is setting ABI_X86 to "64" instead of "32 64" for libhubbub.

Reproducible: Always
Comment 1 Kobboi 2015-04-06 18:14:14 UTC
Same issue with libwapcaplet-0.2.2 by the way
Comment 2 Kobboi 2015-04-06 18:15:32 UTC
(In reply to Kobboi from comment #1)
> Same issue with libwapcaplet-0.2.2 by the way

What I mean is:

/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libwapcaplet.so when searching for -lwapcaplet
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../libwapcaplet.so when searching for -lwapcaplet
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../../x86_64-pc-linux-gnu/bin/ld: skipping incompatible /usr/lib/libwapcaplet.so when searching for -lwapcaplet
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lwapcaplet

when compiling libcss-0.5.0
Comment 3 Michael Weber (RETIRED) gentoo-dev 2015-06-09 22:15:23 UTC
I've made changes to netsurf.eclass to pass lib32/lib64 into buildsystem-1.3 and revbumped all consuming packages.
The resulting netsurf-3.3-r1[abi_x86_32,abi_x86_64] should pull all bumped versions.