nvidia-glx makes links to incompatable modules

Bug #159868 reported by zcat
2
Affects Status Importance Assigned to Milestone
linux-restricted-modules-2.6.22 (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Binary package hint: nvidia-glx

nvidia-glx package creates soft-links in /usr/lib which point to the wrong (nvidia-glx-new) versions of those libraries.

The link /usr/lib/libGLcore.so.1 -> /usr/lib/libGLcore.so.100.14.19
  should be /usr/lib/libGLcore.so.1 -> libGLcore.so.1.0.9639

The link /usr/lib/libGL.so.1 -> libGL.so.100.14.19
  should be /usr/lib/libGL.so.1 -> libGL.so.1.0.9639

This causes the following error logged in /var/log/Xorg.0.log

 (II) LoadModule: "glx"
 (II) Loading /usr/lib/xorg/modules//libglx.so
 dlopen: /usr/lib/libGLcore.so.1: undefined symbol: _nv000043gl
 (EE) Failed to load /usr/lib/xorg/modules//libglx.so
 (II) UnloadModule: "glx"
 (EE) Failed to load module "glx" (loader failed, 7)

As a temporary workaround, this script will 'repair' the links if you're installed the nvidia-glx package and now have no GLX support (as reported by glxinfo)

#!/bin/bash
cd /usr/lib/
rm libGLcore.so.1 libGL.so.1
ln -s libGLcore.so.1.0.9639 libGLcore.so.1
ln -s libGL.so.1.0.9639 libGL.so.1

Revision history for this message
zcat (zcat) wrote :
Download full text (4.6 KiB)

Just to confirm; GLX on my system is currently in perfect working order with the following links;

root@fluffy:~# ls -l /usr/lib/libGL*
lrwxrwxrwx 1 root root 21 2007-11-04 14:47 /usr/lib/libGLcore.so.1 -> libGLcore.so.1.0.9639
-rw-r--r-- 1 root root 10040196 2007-10-16 00:42 /usr/lib/libGLcore.so.100.14.19
-rw-r--r-- 1 root root 7626236 2007-06-26 09:33 /usr/lib/libGLcore.so.1.0.7184
-rw-r--r-- 1 root root 7626236 2007-10-16 00:42 /usr/lib/libGLcore.so.1.0.7185
-rw-r--r-- 1 root root 8961220 2007-10-16 00:42 /usr/lib/libGLcore.so.1.0.9639
lrwxrwxrwx 1 root root 10 2007-10-26 19:01 /usr/lib/libGL.so -> libGL.so.1
lrwxrwxrwx 1 root root 17 2007-11-04 14:47 /usr/lib/libGL.so.1 -> libGL.so.1.0.9639
-rw-r--r-- 1 root root 605788 2007-10-16 00:42 /usr/lib/libGL.so.100.14.19
-rw-r--r-- 1 root root 489028 2007-06-26 09:33 /usr/lib/libGL.so.1.0.7184
-rw-r--r-- 1 root root 489028 2007-10-16 00:42 /usr/lib/libGL.so.1.0.7185
-rw-r--r-- 1 root root 567672 2007-10-16 00:42 /usr/lib/libGL.so.1.0.9639
lrwxrwxrwx 1 root root 20 2007-10-24 17:10 /usr/lib/libGLU.so.1 -> libGLU.so.1.3.070001
-rw-r--r-- 1 root root 533352 2007-10-13 13:38 /usr/lib/libGLU.so.1.3.070001
root@fluffy:~#

So I reinstall the nvidia-glx package which I believe is setting those links wrong..

root@fluffy:~# apt-get install --reinstall nvidia-glx
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libglide3
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0B/4493kB of archives.
After unpacking 0B of additional disk space will be used.
Do you want to continue [Y/n]? y
WARNING: The following packages cannot be authenticated!
  nvidia-glx
Install these packages without verification [y/N]? y
(Reading database ... 158908 files and directories currently installed.)
Preparing to replace nvidia-glx 1:1.0.9639+2.6.22.4-14.9 (using .../nvidia-glx_1%3a1.0.9639+2.6.22.4-14.9_i386.deb) ...
Unpacking replacement nvidia-glx ...
Setting up nvidia-glx (1:1.0.9639+2.6.22.4-14.9) ...

Processing triggers for libc6 ...
ldconfig deferred processing now taking place

root@fluffy:~# ls -l /usr/lib/libGL*
lrwxrwxrwx 1 root root 22 2007-11-04 14:46 /usr/lib/libGLcore.so.1 -> libGLcore.so.100.14.19
-rw-r--r-- 1 root root 10040196 2007-10-16 00:42 /usr/lib/libGLcore.so.100.14.19
-rw-r--r-- 1 root root 7626236 2007-06-26 09:33 /usr/lib/libGLcore.so.1.0.7184
-rw-r--r-- 1 root root 7626236 2007-10-16 00:42 /usr/lib/libGLcore.so.1.0.7185
-rw-r--r-- 1 root root 8961220 2007-10-16 00:42 /usr/lib/libGLcore.so.1.0.9639
lrwxrwxrwx 1 root root 10 2007-10-26 19:01 /usr/lib/libGL.so -> libGL.so.1
lrwxrwxrwx 1 root root 18 2007-11-04 14:46 /usr/lib/libGL.so.1 -> libGL.so.100.14.19
-rw-r--r-- 1 root root 605788 2007-10-16 00:42 /usr/lib/libGL.so.100.14.19
-rw-r--r-- 1 root root 489028 2007-06-26 09:33 /usr/lib/libGL.so.1.0.7184
-rw-r--r-- 1 root root 489028 2007-10-16 00:42 /usr/lib/libGL.so.1.0.7185
-rw-r--r-- 1 root root 567672 2007-10-16 00:42 /usr/lib/...

Read more...

Revision history for this message
zcat (zcat) wrote :

OK, I've tracked down the REAL problem, finally, I hope!!!!

At some point I tried to use the nvidia-glx-new drivers, and found that they didn't work with my card. I also once tried nvidia's binary driver installer, which is quite likely the most frustrating mistake I've ever made since it seems to be at the root of every problem I've suffered with drivers in the six months since. And along the way I somehow ended up with /usr/lib/libGL*.100.14.19 libraries which should have been removed when the matching nvidia driver binary was uninstalled.

When I install nvidia-glx (or probably any number of other packages) they run ldconfig, which moves those links to the most recent libraries.

SO.....

There is no bug. Sorry for wasting your time.

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

Right, closing the bug.

Changed in linux-restricted-modules-2.6.22:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.