From owner-freebsd-questions@FreeBSD.ORG Wed May 14 08:00:40 2008 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B59361065683 for ; Wed, 14 May 2008 08:00:40 +0000 (UTC) (envelope-from kris@FreeBSD.org) Received: from weak.local (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id D905E8FC12; Wed, 14 May 2008 08:00:39 +0000 (UTC) (envelope-from kris@FreeBSD.org) Message-ID: <482A9C2A.1000705@FreeBSD.org> Date: Wed, 14 May 2008 10:00:42 +0200 From: Kris Kennaway User-Agent: Thunderbird 2.0.0.14 (Macintosh/20080421) MIME-Version: 1.0 To: glyn@millingtons.org 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> <4829BFC9.5010901@FreeBSD.org> <86wsly6r7j.fsf@nowhere.org> In-Reply-To: <86wsly6r7j.fsf@nowhere.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Mel , freebsd-questions@freebsd.org Subject: Re: Linux compat library error: ELF file OS ABI invalid X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 14 May 2008 08:00:40 -0000 Glyn Millington wrote: > Kris Kennaway writes: > >> Mel wrote: >>> On Tuesday 13 May 2008 15:48:58 Glyn Millington wrote: >>>> Mel 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. >> The lookup order for linux binaries is /compat/linux/foo first, then >> /foo if the former does not exist. So if /compat/linux/usr/X11R6 >> exists, then it is seen by linux binaries (similarly for files below >> this path). As far as I know, this file should be a directory, not a >> symlink. Moreover, the desired libXext.so.6 lives in that >> directory. It is a symlink pointing to another file in the same >> directory. If neither exist (or exist but are corrupted), then the >> linux binary will fall back to the bogus FreeBSD one in another search >> path. > > > Sorry Kris, I was in part plain wrong in my first reply to this one. > > Linking /compat/linux/usr/X11R6 to /compat/linux/usr/local fixed my > initial problem > > >>>>>>>>>> | /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 > > What I still don't get is why ldconfig doesn't find the the X11R6 > directory, when /compat/linux/etc/ld.so.conf point at it > > > include ld.so.conf.d/*.conf > /lib > /usr/lib > /usr/local/lib > > it seems to be ignoring the first line. > > Either there is a real problem here or the real problem is my ignorance, > and I'm not sure which it is! > > with thanks yet again > > > atb > > > Glyn > > You re-ran the ldconfig command that rescans the specified directory to rebuild its cache, right? :) Kris