Go Back   nV News Forums > Linux Support Forums > NVIDIA Linux

Newegg Daily Deals

Reply
 
Thread Tools
Old 12-06-03, 05:09 PM   #1
petros4060
Registered User
 
Join Date: Feb 2003
Posts: 8
Default Could not load OpenGL library on armyops and ut

I have an NVIDIA 5600 card with an intel 865P chipset. My linux distribution is debian testing with XFree86 4.2. Kernel is 2.4.23 and gcc version is 3.3.2. I used the latest NVIDIA installer to install the nvidia module etc.

I am able to run quake3 well, but when I try to start unreal tournament or armyops it crashes with the line "unable to load OpenGL library". I have no idea what is causing this problem.

Thanks

Peter
petros4060 is offline   Reply With Quote
Old 12-08-03, 10:32 PM   #2
LordMorgul
Electrical Engineer
 
LordMorgul's Avatar
 
Join Date: Dec 2002
Location: San Luis Obispo, CA
Posts: 872
Default

Likely the openGL libraries being found, and attempted to load aren't the nVidia libs. Do you have the Mesa libraries installed? Mesa-libGL can cause conflicts, and would not support the UT engine (no S3TC support) while they will support Q3. UT may be attempting to load different libs than Q3, you can check the linking of your libraries by reading the files installed section of the readme provided by nvidia, and verify you have the links setup correctly.

You should be able to remove Mesa libGL and reinstall the nvidia driver to fix any Mesa related problems, Mesa libGLU does not conflict and should stay.

The failure to load could also be related to threading libraries. There are other posts in forum detailing issues with debian and tls / non-tls GL libs, you may want to look into switching the libs used (changing the linking in /usr/X11R6 tree).
__________________
"..the triumph of evil is for good men to do nothing." (Edmond Burke)
nVIDIA video driver RPMs for Fedora :: see yum repo at livna.org.
LordMorgul is offline   Reply With Quote
Old 12-11-03, 05:26 PM   #3
Obsolete
Registered User
 
Join Date: Dec 2003
Posts: 9
Send a message via ICQ to Obsolete
Default

Set this before armyops:

LD_PRELOAD=/usr/lib/tls/libGL.so.1 armyops

works like a charm !
Obsolete is offline   Reply With Quote
Old 12-12-03, 03:27 PM   #4
petros4060
Registered User
 
Join Date: Feb 2003
Posts: 8
Default

Thanks for the help. Removing mesa libraries did not fix the problem. The LD_PRELOAD=/usr/lib/tls/libGL.so.1 armyops option worked well in all the games that were unable to work previously. Do you know of a way of configuring the system so that I don't need to put this line in every time I start the game.

Peter
petros4060 is offline   Reply With Quote
Old 12-13-03, 04:49 PM   #5
LordMorgul
Electrical Engineer
 
LordMorgul's Avatar
 
Join Date: Dec 2002
Location: San Luis Obispo, CA
Posts: 872
Default

Obsolete, great suggestion!

Simplest fix: bash script
Place this script into /usr/local/bin and make it executable using, chmod 775 aaops (you'll need to copy it there as root). Start armyops with aaops.
Code:
#!/bin/bash
LD_PRELOAD=/usr/lib/tls/libGL.so.1 armyops


Better fix overall:
You should be able to load the tls GL libs for every game, so making it system wide should work fine. What you'll need to do is change the links in the /usr/lib directory for the libGL.so and libGL.so.1 to point into the tls directory (set them to the same lib file name, but the one in the /usr/lib/tls directory instead of directly in /usr/lib). If this causes other things to crash or fail, then set them back and use the script.
__________________
"..the triumph of evil is for good men to do nothing." (Edmond Burke)
nVIDIA video driver RPMs for Fedora :: see yum repo at livna.org.
LordMorgul is offline   Reply With Quote
Old 12-13-03, 06:16 PM   #6
Obsolete
Registered User
 
Join Date: Dec 2003
Posts: 9
Send a message via ICQ to Obsolete
Default

Do you mean like this (the .old can always be set back ;-))
Code:
[root@beretta /usr/lib #] ls -l |grep libGL.so                                                                           [1:13]
lrwxrwxrwx    1 root     root           21 Dec 14 01:12 libGL.so -> /usr/lib/tls/libGL.so*
lrwxrwxrwx    1 root     root           23 Dec 14 01:13 libGL.so.1 -> /usr/lib/tls/libGL.so.1*
-rwxr-xr-x    1 root     root       423476 Dec 11 23:08 libGL.so.1.0.4496*
lrwxrwxrwx    1 root     root           17 Dec 11 23:08 libGL.so.1.old -> libGL.so.1.0.4496*
lrwxrwxrwx    1 root     root           10 Dec 11 23:08 libGL.so.old -> libGL.so.1*
Thnx in advance!
Obsolete is offline   Reply With Quote
Old 12-13-03, 07:05 PM   #7
LordMorgul
Electrical Engineer
 
LordMorgul's Avatar
 
Join Date: Dec 2002
Location: San Luis Obispo, CA
Posts: 872
Default

That should work yes, alternatively you could point them similarly to the originals, but adding the tls directory like this:
in /usr/lib:
libGL.so -> /usr/lib/tls/libGL.so.1
libGL.so.1 -> /usr/lib/tls/libGL.so.1.0.4496

Of course with symbolic links you can create some very confusing redirections, but either general method should work (I haven't done this myself, so I really do mean *should*).
__________________
"..the triumph of evil is for good men to do nothing." (Edmond Burke)
nVIDIA video driver RPMs for Fedora :: see yum repo at livna.org.
LordMorgul is offline   Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 08:32 AM.


Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.