Date: Fri, 15 Jun 2007 07:49:59 +0200 From: Alexander Leidinger <Alexander@Leidinger.net> To: "Sean C. Farley" <sean-freebsd@farley.org> Cc: freebsd-emulation@freebsd.org Subject: Re: Library loading problem for Linux applications Message-ID: <20070615074959.e18is1dass88wwso@webmail.leidinger.net> In-Reply-To: <20070614152441.C1140@baba.farley.org> References: <20070614152441.C1140@baba.farley.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Quoting "Sean C. Farley" <sean-freebsd@farley.org> (from Thu, 14 Jun =20 2007 15:40:40 -0500 (CDT)): > Since the xorg 7.2 upgrade, I have been unable to run games/linux-ut > (maintainer is yours truly). I believe it to be the way the libraries > are being loaded that is causing the problem. > > If I try to run the ut (shell script that runs ut-bin), I believe > SDLDrv.so is having trouble finding the Linux libXext.so.6. > > ut -log output (snipped): > Bound to SDLDrv.so > appError called: > Couldn't initialize SDL: No available video device > > ktrace output: > 52006 ut-bin CALL open(0xbfbfc5c0,0,0x287078ab) Please use linux_kdump or truss, the FreeBSD kdump doesn't translate =20 Linux syscalls. > If I fix the problem by running (cd /compat/linux/usr && ln -s X11R6 > local), then this is solved. Of course, there has to be a second > problem; it cannot find the Linux libGL.so.1. > > ut -log output (snipped): > Bound to OpenGLDrv.so > Loaded render device class. > Initializing OpenGLDrv... > binding libGL.so.1 > appError called: > Failed loading libGL.so.1: /usr/local/lib/libGL.so.1: ELF file OS ABI inva= lid > > ktrace output: > 1395 ut-bin CALL open(0xbfbfc870,0,0) > 1395 ut-bin NAMI "./tls/libGL.so.1" > 1395 ut-bin RET open JUSTRETURN > 1395 ut-bin CALL open(0xbfbfc870,0,0) > 1395 ut-bin NAMI "./libGL.so.1" > 1395 ut-bin RET open JUSTRETURN > 1395 ut-bin CALL open(0xbfbfc870,0,0) > 1395 ut-bin NAMI "/compat/linux/usr/local/lib/tls/libGL.so.1" > 1395 ut-bin NAMI "/usr/local/lib/tls/libGL.so.1" > 1395 ut-bin RET open JUSTRETURN > 1395 ut-bin CALL open(0xbfbfc870,0,0) > 1395 ut-bin NAMI "/compat/linux/usr/local/lib/libGL.so.1" > 1395 ut-bin NAMI "/usr/local/lib/libGL.so.1" > 1395 ut-bin RET open 49/0x31 > > What is the correct solution to have the Linux application search all > relevant directories in /compat first? LD_LIBRARY_PATH is ignored by That's the default. > these open() calls. The nVidia libGL.so.1 is installed in > /compat/linux/usr/lib. Do you have the right ld.so.conf (LINUXBASE/etc/) and =20 ld.so.conf.d/xorg-x11-i386.conf? The linux ldconfig has to be run =20 (chrooted). To be on the safe side remove all linux ports, clean =20 /compat/linux, and resinstall the linux ports. Currently it sounds =20 like a ldconfig problem... Bye, Alexander. --=20 If sarcasm were posted on Usenet, would anybody notice? =09=09-- James Nicoll http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID =3D B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID =3D 72077137
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070615074959.e18is1dass88wwso>