nVidia and Starcraft

Daniel Foesch krach42 at aol.com
Wed Mar 21 22:19:19 CST 2001


>Daniel Foesch <krach42 at aol.com> wrote:
>
>> Fixed the problem of Starcraft not working... (how? I have no
>> idea...) Finally got OpenGL games working (SOF worked because it
>> linked libGL.so.1 instead of libGL.so... which both point to the
>> SAME file... so I went about looking into why, and it turns out
>> that nVidia's GLX installer does NOT remove any libGL.so* in the
>> /usr/X11R6/lib directory. :P)
>> 
>libGL.so is only needed for the compile-time linker, which is called
>by gcc. The runtime linker ld.so don't cares about libGL.so, but is
>looking for the file-name, which is the real name of the lib. This
>one is set during compile-time of the lib (soname). libGL.so should
>be part of the devel-package.

Look, nVidia's help HTML file states that the drivers will have problems with
any files /usr/X11R6/lib/libGL.so*   because they may compete for the library
name, and in my case, they did.  If I had Quake3, UT, or any other game link to
libGL.so, X would immediately crash with a sig11 (segv) and leave me at the
console.  After much badgering, I ran Soldier Of Fortune, and it ran perfectly.
 Seeking to understand why, it linked libGL.so.1.  So I linked UT to
libGL.so.1, and voila, it worked.  Now, scine both /usr/lib/libGL.so  and
/usr/lib/libGL.so.1 are symlinks to /usr/lib/libGL.so.1.0.767

The oddity of this caused me to investigate the reasons why, and I found the
/usr/X11R6/lib directory had a libGL.so, which I found by running a quick "find
/ -name libGL.so" (especially quick because I'm running reiserfs)  Anyways,
after I removed these I could safely link the libGL.so file, and all my
programs worked perfect there after.  Understand?

OBTW, you might just be confused by what I mean by "linked" SOF, UT, and Q3 all
allow you to specify which opengl library they link to at runtime, which is
stored in the files ~/.loki/sof-demo/config.cfg,
~/.loki/ut/System/UnrealTournament.ini, and ~/.q3a/baseq3/config.cfg
respectively. I'm not talking about linking at compile time at all, in fact,
those programs that I could NOT change the runtime link would have forever been
doomed to crash because I couldn't change them, had I not fixed the problem,
for instance, Parsec, and WINE (thus Counter-Strike)   ... Ok, I could have
fixed wine... ;) (open source kicks ***)

Daniel "Krach" Foesch
---------------------
"I'm all in favor of regulations dictating a standard placement of directions
on frozen foods" -Lyle McCracken



More information about the wine-users mailing list