From owner-freebsd-emulation@FreeBSD.ORG Mon Oct 29 02:02:19 2007 Return-Path: Delivered-To: freebsd-emulation@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BD14916A4C9 for ; Mon, 29 Oct 2007 02:02:19 +0000 (UTC) (envelope-from freebsd-emulation@m.gmane.org) Received: from ciao.gmane.org (main.gmane.org [80.91.229.2]) by mx1.freebsd.org (Postfix) with ESMTP id 422A613C4C4 for ; Mon, 29 Oct 2007 02:00:50 +0000 (UTC) (envelope-from freebsd-emulation@m.gmane.org) Received: from list by ciao.gmane.org with local (Exim 4.43) id 1ImJve-00017n-JK for freebsd-emulation@freebsd.org; Mon, 29 Oct 2007 02:00:34 +0000 Received: from c-71-193-243-110.hsd1.or.comcast.net ([71.193.243.110]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 29 Oct 2007 02:00:34 +0000 Received: from zephiris by c-71-193-243-110.hsd1.or.comcast.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 29 Oct 2007 02:00:34 +0000 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-emulation@freebsd.org From: Zephiris Date: Sun, 28 Oct 2007 19:00:20 -0700 Lines: 280 Message-ID: References: <66147675@ipt.ru> <98294959@ipt.ru> <19713641@serv3.int.kfs.ru> <44625948@srv.sem.ipt.ru> <62540272@srv.sem.ipt.ru> <98203547@srv.sem.ipt.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: c-71-193-243-110.hsd1.or.comcast.net User-Agent: KNode/0.10.5 Sender: news Subject: Re: Nvidia LibGL and RELENG_7 linuxulator X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Oct 2007 02:02:19 -0000 Boris Samorodov wrote: > On Fri, 26 Oct 2007 18:46:49 -0700 Zephiris wrote: >> Boris Samorodov wrote: >> > On Fri, 26 Oct 2007 03:45:54 -0700 Zephiris wrote: >> >> Boris Samorodov wrote: >> >> > On Thu, 25 Oct 2007 23:31:44 -0700 Zephiris wrote: >> >> >> Boris Samorodov wrote: >> >> >> > On Sat, 20 Oct 2007 16:44:12 -0700 Zephiris wrote: >> >> >> > >> >> >> >> >> >> I've been getting a rather strange issue between Nvidia >> >> >> >> >> >> driver and the linux compatibility. >> >> >> >> >> > >> >> >> >> >> >> I've tried this with default Fedora Core 4 libraries, >> >> >> >> >> >> default 2.4 version emulation, 2.6.16, FC6, F7, and now >> >> >> >> >> >> Gentoo. With older Linux X11 libraries >> >> >> >> >> > >> >> >> >> >> > As of 2.6.16: did you follow instructions from >> >> >> >> >> > /usr/ports/UPDATING while upgrade to 2.6.16? >> >> >> >> > >> >> >> >> >> I just tried it again explicitly following those >> >> >> >> >> instructions from the start, identical results. >> >> >> >> > >> >> >> >> >> >> (eg, those from ports), anything trying to use Nvidia's >> >> >> >> >> >> libGL that installs into the linux compat area will crash >> >> >> >> >> >> immediately. To get this >> >> >> >> >> > >> >> >> >> >> > Crash... Did you ugrade your system and may be forgot to >> >> >> >> >> > upgrade the port? Or did you upgrade the OS without >> >> >> >> >> > reinstalling ports? >> >> >> >> > >> >> >> >> >> This was a pretty fresh installation from CURRENT, not a >> >> >> >> >> long upgrade chain or from 6.x. Everything's up to date. Via >> >> >> >> >> ports itself, there's no way to get newer X11 libraries than >> >> >> >> >> 6.8 itself, correct? >> >> >> >> > >> >> >> >> > If you mean linux libraries then yes. >> >> >> >> > >> >> >> >> > OK. can you describe in details how do you install >> >> >> >> > ports/options/etc to populate /compat/linux from scratch? And >> >> >> >> > which options do you use for nvidia-driver port and other >> >> >> >> > *GL* ports? >> >> >> > >> >> >> >> I install in order emulators/linux_base-fc6, >> >> >> >> x11/linux-xorg-libs, x11/nvidia-driver (with ACPI and LINUX >> >> >> >> flags), x11-toolkits/linux-gtk2, then x11-toolkits/linux-gtk. >> >> >> >> It's enough to test a number of things. >> >> >> > >> >> >> > So far so good. Did you try to use a linux-app here? Acrobat >> >> >> > Reader or else? >> >> > >> >> > Nobody can help you if you don't want to. >> > >> >> Other non-GL apps work alright when everything is installed via >> >> ports, including X11 and otherwise. Acrobat Reader works, >> >> linux-firefox works, linux-opera works, etc. >> > >> > OK, good. Thanks for the answer. >> > >> >> >> >> >> ldd glxinfo >> >> >> >> >> glxinfo: >> >> >> >> >> libGLU.so.1 => /usr/X11R6/lib/libGLU.so.1 (0x2806a000) >> >> >> >> >> libGL.so.1 => /usr/lib/libGL.so.1 (0x280eb000) >> >> >> >> > >> >> >> >> > That is very strange. This library should be at least at >> >> >> >> > /usr/local/lib directory. Can you show an output of >> >> >> >> > "pkg_info -W /usr/lib/libGL.so.1"? > > I'd like to get an answer for this question. [2] pkg_info -W /usr/lib/libGL.so.1 pkg_info: /usr/lib/libGL.so.1: file cannot be found > >> >> >> >> That's for a linux glxinfo. >> >> >> > >> >> >> > Don't understand you answer. Is it from ports? Or does you >> >> >> > installed it by hand? >> >> >> It's from linux_dri, so put there by hand, >> >> > >> >> > Can't follow you: "It's from ports, so put it somewhere by hand..." >> > >> >> Okay, a different example then. Neverwinter Night's nwmain installed >> >> from ports (against regular FC6 and everything else specifically via >> >> ports): >> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >> > Seems you are misleading yourself. Take a look at [1]. Those libraries >> > do not belong to the base system. > >> No, that's why they're installed via ports? Pretty clear? > > Fair enough. But you didn't prove it (give an answer for [2]) and > still show that libraries from ports got installed to /usr/lib. > If you don't change a default configuration they should go either to > /usr/local or /compat/linux. If not then the port is broken and it's > worth a PR. Running ldd on a linux binary doesn't prepend /compat/linux/ to the output. Nothing's actually in /usr/lib. > >> Why would any of >> the linux compatibility libraries be installed as "part of the base >> system"? > > This is just the question I wanted to ask you. ;-) > With the default configuration they shouldn't. > >> >> nwmain: >> >> libm.so.6 => /lib/libm.so.6 (0x28642000) >> >> libpthread.so.0 => /lib/libpthread.so.0 (0x2866a000) >> >> libGL.so.1 => /usr/lib/libGL.so.1 (0x28680000) >> > ^^^^^^^^^^^^^^^^^^^ [1] > > Seconded [2] and do you really have /usr/lib/libGL.so.1 (a file or a > link etc.)? Or is a linuxbase (/compat/linux) is somehow got stripped? > So far seems that it is a main question. 'cause this file can be at > /usr/local/lib, /usr/X11R6/lib, /compat/linux/ but not at /usr/lib. I don't know why ldd doesn't add /compat/linux, but it's pretty obvious via the output when something's a FreeBSD binary vs. a Linux one. > >> >> libGLU.so.1 => /usr/X11R6/lib/libGLU.so.1 (0x28716000) >> >> libmss.so.6 => not found >> >> libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0x28796000) >> > ^^^^^^^^^^^^^^^^^^^^^^^^ [1] >> >> libc.so.6 => /lib/libc.so.6 (0x2881c000) >> >> /lib/ld-linux.so.2 (0x28623000) >> >> libGLcore.so.1 => /usr/lib/libGLcore.so.1 (0x28960000) >> > ^^^^^^^^^^^^^^^^^^^^^^^ [1] >> >> libnvidia-tls.so.1 => /usr/lib/libnvidia-tls.so.1 >> >> (0x292f8000) >> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [1] >> >> libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x292fa000) >> >> libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x29309000) >> >> libdl.so.2 => /lib/libdl.so.2 (0x293dc000) >> >> libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x293e1000) >> >> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x294ca000) >> > >> >> > Anyway this configuration is not supported by the FreeBSD-emulation >> >> > team. >> > >> >> Alright, switching back over to ports everything again, >> > >> > Hope, it's clear to you that you didn't succeed in it. > >> /compat/linux/usr/lib/libSDL-1.2.so.0 was installed by package >> linux-sdl-1.2.10,1 >> /compat/linux/usr/lib/libGL.so.100.14.19 was installed by package >> nvidia-driver-100.14.19 >> /compat/linux/usr/lib/libGLcore.so.100.14.19 was installed by package >> nvidia-driver-100.14.19 >> /compat/linux/usr/lib/libnvidia-tls.so.100.14.19 was installed by >> package nvidia-driver-100.14.19 > > That's good. > >> (the respective Nvidia libraries are symlinks to the longer versioned >> ones) > > And this is not clear. Symlinked to where? As far as I can see to > /usr/lib which shouldn't happen.' > lrwxr-xr-x 1 root wheel 18B Oct 26 01:31 /compat/linux/usr/lib/libGL.so.1 -> libGL.so.100.14.19 Etc. >> >> the issues of >> >> everything that tries to load OpenGL crashing still persist. Running >> >> ktrace+linux_kdump doesn't appear to yield any pattern of behavior or >> >> calls before the segfault. >> > >> > Actually you get a system which may fault any time (I mean >> > linuxulator). You don't have a control over your system now. >> > Linux (and may be other) libraries are spread here and there. >> > >> > I'd recommend you reinstalling the system from scratch, sorry. > >> As I've said, I've done that several times already. You suggested that >> before, and I did it again then. > > If you give answers to some questions and leave alone others -- I have > to deal with it. Hence I may give wrong recommendations, sorry. > >> Did it change the result? No. Everything >> in /compat/linux/ right now is only what's there installed via >> ports. > > Everithing in /compat/linux was never a question at this thread. But > /usr/lib has been. > >> I'm >> not mixing and matching or spreading around anything. > > OK, there is enough questions at this letter to prove your point. > >> Again, the only things there right now are official ports, hence no >> libglut or glxinfo now, either. > > BTW, about glx. I installed it at a test host (without nvidia stuff) > and here it is: > ----- > # uname -srm > FreeBSD 7.0-BETA1 i386 > # ldd `which glxinfo` > /usr/local/bin/glxinfo: > libglut.so.4 => /usr/local/lib/libglut.so.4 (0x28080000) > libGLU.so.1 => /usr/local/lib/libGLU.so.1 (0x280b7000) > libGL.so.1 => /usr/local/lib/libGL.so.1 (0x28134000) > libXext.so.6 => /usr/local/lib/libXext.so.6 (0x28195000) > libXmu.so.6 => /usr/local/lib/libXmu.so.6 (0x281a3000) > libXi.so.6 => /usr/local/lib/libXi.so.6 (0x281b8000) > libX11.so.6 => /usr/local/lib/libX11.so.6 (0x281c0000) > libm.so.5 => /lib/libm.so.5 (0x282ac000) > libthr.so.3 => /lib/libthr.so.3 (0x282c1000) > libc.so.7 => /lib/libc.so.7 (0x282d4000) > libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x283d1000) > libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x284bb000) > libXxf86vm.so.1 => /usr/local/lib/libXxf86vm.so.1 (0x284c6000) > libXdamage.so.1 => /usr/local/lib/libXdamage.so.1 (0x284cb000) > libXfixes.so.3 => /usr/local/lib/libXfixes.so.3 (0x284ce000) > libdrm.so.2 => /usr/local/lib/libdrm.so.2 (0x284d3000) > libXau.so.6 => /usr/local/lib/libXau.so.6 (0x284e2000) > libXt.so.6 => /usr/local/lib/libXt.so.6 (0x284e5000) > libSM.so.6 => /usr/local/lib/libSM.so.6 (0x28535000) > libICE.so.6 => /usr/local/lib/libICE.so.6 (0x2853d000) > libXdmcp.so.6 => /usr/local/lib/libXdmcp.so.6 (0x28554000) > librpcsvc.so.4 => /usr/lib/librpcsvc.so.4 (0x28559000) > ----- > > Libraries from ports and base system are at the designed directories. That's a FreeBSD binary, though. ldd `which glxinfo` /usr/local/bin/glxinfo: libglut.so.4 => /usr/local/lib/libglut.so.4 (0x2807f000) libGLU.so.1 => /usr/local/lib/libGLU.so.1 (0x280b5000) libGL.so.1 => /usr/local/lib/libGL.so.1 (0x28130000) libXext.so.6 => /usr/local/lib/libXext.so.6 (0x281d1000) libXmu.so.6 => /usr/local/lib/libXmu.so.6 (0x281df000) libXi.so.6 => /usr/local/lib/libXi.so.6 (0x281f5000) libX11.so.6 => /usr/local/lib/libX11.so.6 (0x281fd000) libm.so.5 => /lib/libm.so.5 (0x282e8000) libthr.so.3 => /lib/libthr.so.3 (0x282fd000) libc.so.7 => /lib/libc.so.7 (0x2830f000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x28408000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x284f0000) libGLcore.so.1 => /usr/local/lib/libGLcore.so.1 (0x28503000) libnvidia-tls.so.1 => /usr/local/lib/libnvidia-tls.so.1 (0x28e54000) libXau.so.6 => /usr/local/lib/libXau.so.6 (0x28e56000) libXt.so.6 => /usr/local/lib/libXt.so.6 (0x28e59000) libSM.so.6 => /usr/local/lib/libSM.so.6 (0x28ea8000) libICE.so.6 => /usr/local/lib/libICE.so.6 (0x28eb0000) libXdmcp.so.6 => /usr/local/lib/libXdmcp.so.6 (0x28ec7000) librpcsvc.so.4 => /usr/lib/librpcsvc.so.4 (0x28ecc000) > >> The only thing thus far which doesn't work as >> expected is accelerated OpenGL. That's why I'm trying hard to get it >> working, and have suggested alternatives, but with everything at >> suggested and stated defaults, all linux apps will apparently do is >> crash once they try to load libGL.so.1. If I knew why or had been able >> to find an answer, I'd include it. That's why I suggested that >> specifically might just be an interaction with the older X11 libraries, >> too, but I'm not the expert. > > All you use (but linux_base-fc6) is a default configuration. It should > work. Let's find out why it doesn't. > > > WBR