Date: Sat, 28 Dec 2002 16:05:33 -0500 (EST) From: Adam K Kirchhoff <adamk@voicenet.com> To: =?ISO-8859-1?Q?Mikko_Ty=F6l=E4j=E4rvi?= <mbsd@pacbell.net> Cc: freebsd-questions@freebsd.org Subject: Re: linux compatability Message-ID: <20021228155931.K12857@sorrow.ashke.com> In-Reply-To: <20021228121434.B18514-100000@atlas.home> References: <20021228121434.B18514-100000@atlas.home>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 28 Dec 2002, [ISO-8859-1] Mikko Ty=F6l=E4j=E4rvi wrote: > On Sat, 28 Dec 2002, Adam K Kirchhoff wrote: > > > Hey folks, > > > > =09I'm noticing some odd behaviour with the linux compatability > > recently. I have this small gnome app called gnome-run. It links agai= nst > > a number of gnome libraries that I've copied from my linux partition ov= er > > to /compat/linux and put in the appropriate directories. > > > > =09The problem is, when executing this app, the linker seems to try > > and load the libaudiofile.so.0 file from my FreeBSD installation instea= d > > of my /compat/linux installation. When running gnome-run it only does > > this for that one library (though other apps have shown this to be a > > problem with other libraries such as libgmodule-2.0.so.0, > > libglib-2.0.so.0, and libgobject-2.0.so.0) > > > > =09This is what happens when I try to launch "gnome-run" from an > > xterm: > > > > [ adamk@sorrow ~ ]$ gnome-run > > gnome-run: error while loading shared libraries: > > /usr/local/lib/libaudiofile.so.0: ELF file OS ABI invalid > > > > =09Well, of course the OS ABI is invalid. The libaudiofile library > > it's trying to load is for FreeBSD, not Linux. But, if I move the > > libaudiofile.so.0 file from /usr/local/lib to /usr/local/lib/old, and > > try to launch gnome-run, everything works fine. So, if the FreeBSD > > version of the library isn't present, it then looks for the Linux versi= on. > > > > =09Any ideas what's going on or how to fix this? > > Run "/compat/linux/sbin/ldconfig". That should update the path cache > of the (linux) dynamic linker. Didn't help :-( > I assume the permissions on the libs already are reasonable. [ adamk@sorrow ~ ]$ ls -l /compat/linux/usr/lib/libaudiofile.so.0* lrwxr-xr-x 1 root wheel 21 Dec 28 14:33 /compat/linux/usr/lib/libaudiofile.so.0 -> libaudiofile.so.0.0.2 -rwxr-xr-x 1 root wheel 158396 Dec 28 14:33 /compat/linux/usr/lib/libaudiofile.so.0.0.2 Solved it! It's LD_LIBRARY_PATH. If you have the same FreeBSD library in your LD_LIBRARY_PATH, it tries to use that library instead of the linux one :-) Mikko, thanks for your help. It was your tip on permissions that got me to try the app as root. When I saw that they worked as root, I realized it had to be something in my environment. Adam To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021228155931.K12857>