Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 May 2008 15:15:40 +0200
From:      Mel <fbsd.questions@rachie.is-a-geek.net>
To:        freebsd-questions@freebsd.org, glyn@millingtons.org
Cc:        Kris Kennaway <kris@freebsd.org>
Subject:   Re: Linux compat library error:  ELF file OS ABI invalid
Message-ID:  <200805131515.40832.fbsd.questions@rachie.is-a-geek.net>
In-Reply-To: <864p92o1d4.fsf@nowhere.org>
References:  <86tzh2oc1t.fsf@nowhere.org> <482958E2.5050207@FreeBSD.org> <864p92o1d4.fsf@nowhere.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 13 May 2008 14:05:43 Glyn Millington wrote:
> Kris Kennaway <kris@FreeBSD.org> writes:
> > Glyn Millington wrote:
> >> Kris Kennaway <kris@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.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200805131515.40832.fbsd.questions>