Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[gentoo-user] prelink errors

91 views
Skip to first unread message

Niccolò Belli

unread,
Oct 7, 2011, 7:40:01 AM10/7/11
to
I do use libreoffice-bin, but not firefox-bin and thinderbird-bin (I do
compile them from source). I already tried revdep-rebuild and
lafilefixer, even emerge -ave @world but nothing changes.

Thanks,
Niccolò

laptop ~ # prelink -amR
prelink: /usr/bin/lddlibc4: Using /lib32/ld-linux.so.2, not
/lib/ld-linux.so.2 as dynamic linker
prelink: /usr/lib64/libreoffice/program/soffice.bin: Could not parse
`/usr/lib64/libreoffice/program/soffice.bin: error while loading shared
libraries: /usr/lib64/libreoffice/program/soffice.bin: nonzero padding
in e_ident'
prelink: /usr/lib64/libreoffice/program/kdefilepicker: Could not find
one of the dependencies
prelink: /usr/lib64/libreoffice/basis3.4/program/python.bin: Could not
find one of the dependencies
prelink: /usr/lib64/thunderbird-devel/bin/thunderbird-bin: Could not
find one of the dependencies
prelink: /usr/lib64/thunderbird-devel/bin/plugin-container: Could not
find one of the dependencies
prelink: /usr/lib64/firefox/plugin-container: Could not find one of the
dependencies
prelink: /usr/lib32/misc/glibc/getconf/POSIX_V6_ILP32_OFFBIG: Using
/lib32/ld-linux.so.2, not /lib/ld-linux.so.2 as dynamic linker
prelink: /usr/lib32/misc/glibc/getconf/POSIX_V7_ILP32_OFFBIG: Using
/lib32/ld-linux.so.2, not /lib/ld-linux.so.2 as dynamic linker
prelink: /usr/lib32/misc/glibc/getconf/XBS5_ILP32_OFF32: Using
/lib32/ld-linux.so.2, not /lib/ld-linux.so.2 as dynamic linker
prelink: /usr/lib32/misc/glibc/getconf/XBS5_ILP32_OFFBIG: Using
/lib32/ld-linux.so.2, not /lib/ld-linux.so.2 as dynamic linker
prelink: /usr/lib32/misc/glibc/getconf/POSIX_V6_ILP32_OFF32: Using
/lib32/ld-linux.so.2, not /lib/ld-linux.so.2 as dynamic linker
prelink: /usr/lib32/misc/glibc/getconf/POSIX_V7_ILP32_OFF32: Using
/lib32/ld-linux.so.2, not /lib/ld-linux.so.2 as dynamic linker
prelink: /usr/lib64/libreoffice/program/soffice.bin: Could not parse
`/usr/lib64/libreoffice/program/soffice.bin: error while loading shared
libraries: /usr/lib64/libreoffice/program/soffice.bin: nonzero padding
in e_ident'
prelink: /usr/lib64/libreoffice/program/kdefilepicker: Could not find
one of the dependencies
prelink: /usr/lib64/libreoffice/basis3.4/program/python.bin: Could not
find one of the dependencies
prelink: /usr/lib64/thunderbird-devel/bin/thunderbird-bin: Could not
find one of the dependencies
prelink: /usr/lib64/thunderbird-devel/bin/plugin-container: Could not
find one of the dependencies
prelink: /usr/lib64/firefox/plugin-container: Could not find one of the
dependencies

walt

unread,
Oct 7, 2011, 2:50:01 PM10/7/11
to
On 10/07/2011 04:32 AM, Niccolò Belli wrote:

> laptop ~ # prelink -amR
> prelink: /usr/bin/lddlibc4: Using /lib32/ld-linux.so.2, not /lib/ld-linux.so.2 as dynamic linker
> prelink: /usr/lib64/libreoffice/program/soffice.bin: Could not parse `/usr/lib64/libreoffice/program/soffice.bin: error while loading shared libraries: /usr/lib64/libreoffice/program/soffice.bin: nonzero padding in e_ident'

I don't know very much about prelink, but I wonder about using a 32-bit
linker to load a 64-bit library? That sounds wrong to me.

Is prelink a 32-bit program? Is there maybe a 64-bit prelink on the same
machine? What is actually in your prelink package?

Niccolò Belli

unread,
Oct 7, 2011, 3:00:02 PM10/7/11
to
Il 07/10/2011 20:44, walt ha scritto:
> I don't know very much about prelink, but I wonder about using a 32-bit
> linker to load a 64-bit library? That sounds wrong to me.
>
> Is prelink a 32-bit program? Is there maybe a 64-bit prelink on the same
> machine? What is actually in your prelink package?

laptop ~ # file /usr/sbin/prelink
/usr/sbin/prelink: ELF 64-bit LSB executable, x86-64, version 1 (SYSV),
statically linked, for GNU/Linux 2.6.9, stripped

Nikos Chantziaras

unread,
Oct 7, 2011, 3:00:02 PM10/7/11
to
On 10/07/2011 09:44 PM, walt wrote:
> On 10/07/2011 04:32 AM, Niccolò Belli wrote:
>
>> laptop ~ # prelink -amR
>> prelink: /usr/bin/lddlibc4: Using /lib32/ld-linux.so.2, not /lib/ld-linux.so.2 as dynamic linker
>> prelink: /usr/lib64/libreoffice/program/soffice.bin: Could not parse `/usr/lib64/libreoffice/program/soffice.bin: error while loading shared libraries: /usr/lib64/libreoffice/program/soffice.bin: nonzero padding in e_ident'
>
> I don't know very much about prelink, but I wonder about using a 32-bit
> linker to load a 64-bit library? That sounds wrong to me.

/lib/ld-linux.so.2 is a symlink to ../lib32/ld-linux.so.2.


> Is prelink a 32-bit program? Is there maybe a 64-bit prelink on the same
> machine? What is actually in your prelink package?

prelink is 64-bit on 64-bit machines and 32-bit on 32-bit machines. On
64-bit machines, it handles 32-bit as well as 64-bit libraries correctly.

Nikos Chantziaras

unread,
Oct 7, 2011, 3:10:01 PM10/7/11
to
On 10/07/2011 02:32 PM, Niccolò Belli wrote:
> I do use libreoffice-bin, but not firefox-bin and thinderbird-bin (I do
> compile them from source). I already tried revdep-rebuild and
> lafilefixer, even emerge -ave @world but nothing changes.
>
> Thanks,
> Niccolò
>
> laptop ~ # prelink -amR
> prelink: /usr/bin/lddlibc4: Using /lib32/ld-linux.so.2, not
> /lib/ld-linux.so.2 as dynamic linker
> prelink: /usr/lib64/libreoffice/program/soffice.bin: Could not parse
> `/usr/lib64/libreoffice/program/soffice.bin: error while loading shared
> libraries: /usr/lib64/libreoffice/program/soffice.bin: nonzero padding
> in e_ident'

This error got introduced with glibc 2.12. It's harmless and I guess
prelink will be updated upstream for this.


> prelink: /usr/lib64/libreoffice/program/kdefilepicker: Could not find
> one of the dependencies

These errors are normal. The needed libraries are not in the linker's
default path. LibreOffice uses wrapper scripts when it launches that
manually set LD_LIBRARY_PATH. This is why prelink can't find them. You
can tell prelink to not prelink anything in /usr/lib64/libreoffice by
setting PRELINK_PATH_MASK in /etc/env.d/99local. Mine looks like this:


PRELINK_PATH_MASK="/usr/lib/vmware-tools:/opt/xulrunner:/usr/lib64/jvm:/usr/lib64/NX:/usr/lib64/libreoffice"
0 new messages