Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 May 2008 15:50:51 +0100
From:      Glyn Millington <glyn@millingtons.org>
To:        Mel <fbsd.questions@rachie.is-a-geek.net>
Cc:        Kris Kennaway <kris@freebsd.org>, freebsd-questions@freebsd.org
Subject:   Re: Linux compat library error:  ELF file OS ABI invalid
Message-ID:  <86zlqufeb8.fsf@nowhere.org>
In-Reply-To: <200805131630.03511.fbsd.questions@rachie.is-a-geek.net> (Mel's message of "Tue\, 13 May 2008 16\:30\:02 %2B0200")
References:  <86tzh2oc1t.fsf@nowhere.org> <200805131515.40832.fbsd.questions@rachie.is-a-geek.net> <8663tiiab9.fsf@nowhere.org> <200805131630.03511.fbsd.questions@rachie.is-a-geek.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Mel <fbsd.questions@rachie.is-a-geek.net> writes:

> On Tuesday 13 May 2008 15:48:58 Glyn Millington wrote:
>> Mel <fbsd.questions@rachie.is-a-geek.net> writes:
>> > On Tuesday 13 May 2008 14:05:43 Glyn Millington wrote:
>> >> >>>> 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
>> >> >>>>
>> >> >>>> `----
>> >>
>> >> that include statement leads to /usr/X11R6
>>
>> Wow - can I just check that I have this right before I do it?!
>>
>> > Best fix:
>> > rm /usr/X11R6
>>
>> get rid of /usr/X11R6, which on a system-wide basis is a link to /usr/local
>>
>> > touch /usr/X11R6
>>
>> Create an empty  *file* /usr/X11R6
>>
>> > chflags schg /usr/X11R6
>>
>> make it system-immutable
>>
>> > /sbin/ldconfig -m /usr/local/lib (just to force the linker to re-read the
>> > dupes).
>>
>> Merge new stuf in the /usr/local/lib directory into the hints file
>>
>> > As a bonus, the old apps you still have pointing to /usr/X11R6
>>
>> But the app in question needs to get at
>>
>> /usr/compat/linux/usr/X11R6/
>
> The app however looks for /usr/X11R6/lib/libXfoo.so.1. If both exist in base 
> system and linux emulation, then the linker will hand it the first one it 
> finds, which because of the /usr/X11R6 symlink to /usr/local will be the 
> FreeBSD one.

ok - got it.

> And yes, Kris, this isn't the 'proper' way, but it's the way that works. I'd 
> be happy to know the proper way as all suggestions I found about 'fixing' 
> linux ldconfig setup generated bogus results (ie. fixed nothing) and this 
> fixed everything.

Me too!!

Linking /compat/linux/usr/X11R6 to /compat/linux/usr/local got Openoffice
running but reaplay is giving the same kind of error :-(




> I always suspected this to be because the linker look up is correct, but the 
> actual file is handed in the base system not in the /compat/linux chroot, but 
> I haven't bothered to verify that.

OK - will await wisdom on this one :-)

atb and thanks again



Glyn



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86zlqufeb8.fsf>