[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: nvidia kernel module and GLX

On Sun, Oct 29, 2000 at 10:31:29PM +0000, Matthew Sackman wrote:
> I've installed XFree 4v26 and it seemed ok - no error messages etc;
> I use an Nvidia TNT2 M64 card, and got the kernel module and the 
> GLX files from NVidia.
> However, both refused to compile. I figured that I needed 
> /usr/src/linux to point to /usr/src/kernel-source... but that didn't
> solve it either. I've tried downloading the rpms and using alien,
> and have scratched my head a lot!

Hi Matthew,

There must be the corresponding kernel-headers for your running kernel
linked under /usr/src/linux.
I like to use make-kpkg (deb kernel-package) to create a
kernel-image...deb and a kernel-headers...deb.
The kernel-headers install to /usr/src/kernel-headers-<kernel-version>
and /usr/src/linux is a symbolic link to them.
This has the advantage that you can mess around with your sources,
without messing up your headers.

I'm using NVIDIA_GLX-0.9-5.tar.gz and NVIDIA_kernel-0.9-5.tar.gz from
the nvidia ftp site. I don't know whether there are newer ones
available, but those are working with branden's debs and

> Basically, XFree starts, but does not load any window manager, plus,
> when I kill the server, the consoles have darkened, and the entire
> colour set seems to have altered - the blues of mutt are now green.

> An XFree86 -configure exits with:
> (... xserver output ...)
> (--) PCI:*(1:0:0) NVidia Riva Ultra 64 rev 21, Mem @ 0xf5000000/24, 0xfc000000/25
> List of video drivers:
>         nvidia
>         mga
>         glint
>         nv
> (... xserver output ...)
> Duplicate symbol RivaEnterLeave in /usr/X11R6/lib/modules/drivers/nv_drv.o
> Also defined in /usr/X11R6/lib/modules/drivers/nvidia_drv.o
> Fatal server error:
> Module load failure

Here's the problem. There are 2 drivers for the same card family
nv - provided by xfree86
nvidia - provided by nvidia

> Now it may be that I've messed things up by trying to install the NVidia
> modules, but I've followed the instructions to the letter and simply have no
> idea why things have not gone to plan.

1. you have to move away the xfree86 nv_drv.o.
'dpkg-divert --add --rename /usr/X11R6/lib/modules/drivers/nv_drv.o'
will survive the next update, too.

As the nvidia_drv.o is there, I assume you manage to compile the GLX

2. there is a conflict between
/usr/X11R6/lib/modules/extensions/libglx.a - provided by xfree86
/usr/X11R6/lib/modules/extensions/libglx.so - provided by nvidia

I solved this by adding another diversion
'dpkg-divert --add --rename /usr/X11R6/lib/modules/extensions/libglx.a'
but I've been told that referencing the libglx modules with full path in
XF86Config-4 will also work.

3. libraries in /usr/lib 'ls libGL*'
libGLcore.so -> libGLcore.so.1        - nvidia
libGLcore.so.1 -> libGLcore.so.1.0.5  - nvidia
libGLcore.so.1.0.5                    - nvidia
libGL.so -> libGL.so.1                - nvidia
libGL.so.1 -> libGL.so.1.0.5          - nvidia
libGL.so.1.0.5                        - nvidia

There used to be a libGL.so.1.2 provided by xlibmesa3 (I think)
conflicting with libGL.so.1.0.5
'dpkg-divert --add --rename --divert /usr/lib/divert.libGL.so.1.2 \
will solve this and survive the next apt-get upgrade.

!! It is import that the library moved away does not start with lib !!
Otherwise ldconfig will recognize it as a library an alter the links
libGL.so and libGL.so.1 to point to it.
==> your system will crash, when starting, e.g.. quake3

4. you need kernle support (NVIDIA_kernel-0.9-5.tar.gz)
I enabled the agpart device and dri support during kernel configuration
Use make-kpkg from (kernel-package) to create an image and headers as
mentioned above.
Then compile and install the NVIDIA_kernel module.
(The kernel you are installing for, should by running by this time)

'echo "alias char-major-195 NVdriver" > /etc/modutils/nvidia'
now the NVdriver gets automtically loaded when X is started.

Your system should be fine now.
Have I anything forgotten?

If there are still problems, detailed problem descriptions would be


     Florian Friesdorf <42ff@gmx.net>
OpenPGP key available on public key servers

------> Save the future of Open Source <------
-> Online-Petition against Software Patents <-
------> http://petition.eurolinux.org <-------

Attachment: pgpoCpvwTnMJW.pgp
Description: PGP signature

Reply to: