LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Debian (http://www.linuxquestions.org/questions/debian-26/)
-   -   no display: Xorg, Nvidia driver broken after Etch update; Failed to load module "glx" (http://www.linuxquestions.org/questions/debian-26/no-display-xorg-nvidia-driver-broken-after-etch-update%3B-failed-to-load-module-glx-452126/)

forgox 06-06-2006 11:23 AM

no display: Xorg, Nvidia driver broken after Etch update; Failed to load module "glx"
 
After updating a system with Debian Etch, Xorg stopped to work. Even recompiling kernel and reinstalling driver didn't help. The problem was that Xorg couldn't load the glx library properly.

When starting Xorg the following was displayed

$startx
...

(EE) Failed to load module "glx" (a required submodule could not be loaded, 0)
(EE) Failed to load module "nvidia" (module does not exist, 0)
(EE) No devices detected.

Fatal server error:
no screens found
XIO: fatal IO error 104 (Connection reset by peer) on X server ":0.0"
after 0 requests (0 known processed) with 0 events remaining.


-Also, /var/log/messages contained error about unable to load GLcore and that it couldn't load
/usr/lib/xorg/modules/extensions/libglx.so and NVIDIA driver.

The root cause seems to ba that the latest Xorg changes the directory hierarchy and the latest NVIDIA 8756 driver don't seems to know about it. It looks like the nvidia driver install itself in /usr/X11R6 but the new Xorg expect it in /usr/lib/xorg/drivers. The fix for the problem seems to be to create softlink where the Xorg wants to find the files. Here is what fixed the problem;


ln -s /usr/X11R6/lib/modules/drivers/nvidia_drv.o /usr/lib/xorg/modules/drivers/nvidia_drv.o
ln -s /usr/X11R6/lib/modules/drivers/nvidia_drv.so /usr/lib/xorg/modules/drivers/nvidia_drv.so
mv /usr/lib/xorg/modules/extensions/libglx.so /usr/lib/xorg/modules/extensions/libglx.so-old (for backup purpose only)
ln -s /usr/X11R6/lib/modules/extensions/libglx.so.1.0.8756 /usr/lib/xorg/modules/extensions/libglx.so


Now both the latest Debian Eth Xorg and Nvidia works fine.

Hope that helps...

macemoneta 06-06-2006 11:50 AM

There are options on the nVidia installer that let you specify the installation directories. Specifically (for example):

sh NVIDIA-Linux-x86_64-1.0-8756-pkg2.run --x-prefix=/usr/lib/xorg

You can get a full list of the options with '-A -help'.

KRiSX.cjb.net 06-07-2006 01:15 AM

i got the same problem too after installing the latest etch updates...

will try this... hope it fixes the problem

gruven 06-07-2006 02:15 AM

What version of Xorg did you update to? Xorg 7.1 is known to break the nvidia and ati binary drivers. Nvidia has said they will support the new Xorg in their 9xxx drivers coming out soon.

KRiSX.cjb.net 06-07-2006 02:24 AM

i'm running xorg 7.0.20

the --x-prefix=/usr/lib/xorg didn't work :(

KRiSX.cjb.net 06-07-2006 02:44 AM

doing the commands posted above...

Code:

ln -s /usr/X11R6/lib/modules/drivers/nvidia_drv.o /usr/lib/xorg/modules/drivers/nvidia_drv.o
ln -s /usr/X11R6/lib/modules/drivers/nvidia_drv.so /usr/lib/xorg/modules/drivers/nvidia_drv.so
mv /usr/lib/xorg/modules/extensions/libglx.so /usr/lib/xorg/modules/extensions/libglx.so-old (for backup purpose only)
ln -s /usr/X11R6/lib/modules/extensions/libglx.so.1.0.8756 /usr/lib/xorg/modules/extensions/libglx.so

gets me into X... but no 3d apps run... cause they can't find glx... lol

BigMick 06-09-2006 08:19 AM

Quote:

Originally Posted by KRiSX.cjb.net
i'm running xorg 7.0.20

the --x-prefix=/usr/lib/xorg didn't work :(

The reason for that is the nvidia drivers are installed into /usr/lib/xorg/lib when you use that flag.

I simlinked
/usr/lib/xorg/lib/modules/drivers/nvidia_drv.* into /usr/lib/xorg/modules/drivers
And
/usr/lib/xorg/lib/modules/extensions/libglx.so.1.0.XXX (whatever yours happens to be) into /usr/lib/xorg/modules/extensions/libglx.so

This worked for me, but I got the clue from the first poster :).

--
BigMick

Michael_aust 06-09-2006 09:04 AM

i got round the issue by giving the nvidia installer certain parametres:

try running the nvidia installer with:

./nvidiaetcetc.run --x-module-path=/usr/lib/xorg/modules/


i cant remmeber if there is a space between the .run and the --x part though.
this worked for me

simon_w 06-10-2006 04:52 PM

Quote:

Originally Posted by Michael_aust
i cant remmeber if there is a space between the .run and the --x part though.
this worked for me

Yep, there is.

More info here,
http://wiki.debian.org/Xorg69To7#hea...f25a2969697fff

kushalkoolwal 06-10-2006 05:15 PM

Quote:

Originally Posted by Michael_aust
i got round the issue by giving the nvidia installer certain parametres:

try running the nvidia installer with:

./nvidiaetcetc.run --x-module-path=/usr/lib/xorg/modules/


i cant remmeber if there is a space between the .run and the --x part though.
this worked for me

Yes that method worked for me. Thanks a bunch dude.

mosca 06-10-2006 05:44 PM

I installed nvidia's drivers with the --x-module-path and got the files in the correct /usr/lib/xorg/modules directory. Immidiately after the .run installation the nvidia driver worked. However, when I started up my comp the next time I got some message "Removing nvidia tls" (or similar) during boot when it started the MTA, apache, mysql as usual (just before the login). Now I am not able to start X :(

The Xorg log file does not give me much, since it stops at "(II) Initializing extension GLX" indicating it might be sth with that...

Any clues?

BobNutfield 06-11-2006 03:31 AM

This is what makes this forum the outstanding resource that it is....

I normally use Synaptics once or twice a week just to keep my Etch install up-to-date. I noticed this morning that it was a rather large update and include a number of xorg files to upgrade. Whenever I see xorg upgrade files I am a little cautious, especially with a testing distro like etch. However, I proceeded with the upgrade (166 total package upgrades) and WHAM! NO X. I was not aware that the nVidia drivers would be affected.

I immediately came to this forum because I knew I must not have been the only one affected, and sure enough, this post contained all the information I needed to fix the problem (actually, the link provided by simon w was all I needed. I simply re-installed the NVIDIA driver with the new path names as instructed on that link and all was fixed).

Thanks to everyone who posted here for saving me hours of investigative work.

Bob

lurko 09-10-2006 05:36 PM

I was having immense difficulty getting the nvidia kernel module installed. I have just recounted how I actually got the thing compiled, for the other search-loving noobs like me(and perhaps my future self), in this post, and I'm continuing the adventure here because this is where I found the answer to the question of how to actually get the damn thing to work after successfully compiling it.

I was getting the same errors as the OP, except it was saying glx and nvida both did not exist. This is on a basically fresh netinst (base, desktop) install of etch b3. The OP's solution seemed like it might be the answer.
Code:

ln -s /usr/X11R6/lib/modules/drivers/nvidia_drv.o /usr/lib/xorg/modules/drivers/nvidia_drv.o
ln -s /usr/X11R6/lib/modules/drivers/nvidia_drv.so /usr/lib/xorg/modules/drivers/nvidia_drv.so
ln -s /usr/X11R6/lib/modules/extensions/libglx.so.1.0.8756 /usr/lib/xorg/modules/extensions/libglx.so

--x-module-path seemed like it might be too. the only thing was, nvidia_drv.o and .so were both already in /usr/lib/xorg/modules/drivers, and a symlink(libglx.so) to libglx.so.1.0.8774 was already in /usr/lib/xorg/modules/extensions. So I took I took a wild stab and did the opposite of the OP.

Code:

ln -s /usr/lib/xorg/modules/extensions/libglx.so.1.0.8774 /usr/X11R6/lib/modules/extensions/libglx.so
ln -s /usr/lib/xorg/modules/drivers/nvidia_drv.o /usr/X11R6/lib/modules/drivers/nvidia_drv.o
ln -s /usr/lib/xorg/modules/drivers/nvidia_drv.so /usr/X11R6/lib/modules/drivers/nvidia_drv.so

I don't pretend to understand why, but that worked and now nvidia and glx (not to mention X!) load up no problem.

Quakeboy02 01-11-2007 10:41 PM

I just upgraded both my etch machines, and I started having problems with glx. On the one with an old MX-400 card, I started noticing that xscreensaver was rebooting X. I reran the nvidiaetc.run app without the "--x-module-path=/usr/lib/xorg/modules/" bit and that seemed to fix it.

On the machine with the Ti-500 card, I continue to have problems with the nvidia tool dying when I click on the glx info line. I think it was a segmentation fault. To be honest, I just converted this machine to linux, so I'm not sure that didn't always happen. I'd like to have a fix, though, if anyone has one.

jordicm 01-13-2007 04:52 AM

I use Etch with a nvidia card and the problem I have seen is that the packet xserver-xorg-core writes /usr/lib/xorg/modules/extensions/libglx.so, but the nvidia script puts instead a symlink to the compiled library, so each time that packet is updated I must delete the file libglx.so and recompile the nvidia library.

And I run the nvidia script with no options.


All times are GMT -5. The time now is 09:58 PM.