Linux compat library error: ELF file OS ABI invalid

Mel fbsd.questions at rachie.is-a-geek.net
Tue May 13 13:15:43 UTC 2008


On Tuesday 13 May 2008 14:05:43 Glyn Millington wrote:
> Kris Kennaway <kris at FreeBSD.org> writes:
> > Glyn Millington wrote:
> >> Kris Kennaway <kris at FreeBSD.org> writes:
> >>> Glyn Millington wrote:
> >>>> FreeBSD 7.0 release, ports currently up-to-date
> >>>> Trying to launch Linux Open Office 2.4 I get the following error
> >>>> message ,----
> >>>>
> >>>> | /usr/compat/linux/opt/openoffice.org2.4/program/soffice.bin: error
> >>>> | while loading shared libraries: /usr/local/lib/libXext.so.6: ELF
> >>>> | file OS ABI invalid
> >>>>
> >>>> `----
> >>>> Now I *think*   that what it ought to load is
> >>>>
> >>>> /usr/compat/linux/usr/X11R6/lib/libXext.so.6
> >>>> but it goes for the FreeBSD X extension lib instead.
> >>>
> >>> kldload linux
> >>> or build it into your kernel.
> >>
> >> Thanks Kris - trouble is its already there!
> >
> > No, that is not necessary.  Next thing to check is that /usr/X11R6 is
> > before /usr/local in your linux ldconfig search path.
>
> Yes, it is right where it should be
>
> $cat /usr/compat/linux/etc/ld.so.conf
>
> include ld.so.conf.d/*.conf
> /lib
> /usr/lib
> /usr/local/lib
>
>
> that include statement leads to /usr/X11R6

Best fix:
rm /usr/X11R6
touch /usr/X11R6
chflags schg /usr/X11R6
/sbin/ldconfig -m /usr/local/lib (just to force the linker to re-read the 
dupes).

As a bonus, the old apps you still have pointing to /usr/X11R6 will now 
complain and be exposed and anything that wants to install or modify 
something in /usr/X11R6 will be exposed too.
I've done this about a week after I upgraded and it solved all the linux 
linker problems and only one app I had compiled from source rather then using 
a port, wasn't working anymore. Recompiled and no problemo.

-- 
Mel

Problem with today's modular software: they start with the modules
    and never get to the software part.


More information about the freebsd-questions mailing list