PDA

View Full Version : TNT PCI Card on a Debian woody


mowses
04-07-03, 03:42 PM
Hi there

I have been trying to install the nvidia drivers for the last few days but with no luck.

I tried to compile them ot of pretty old sources that I got via apt-get. After that didn't work I tried my luck with the new .run script. Again no luck.

The Card is a Diamond Viper 550 (PCI) CPU 200MHz Intel Pentium MMX Processor. Kernel 2.4.20 on debian woody.

I am pretty much a Linux newbie so please explain "everything" and be patient. ;-)

I compiled the Kernel I am currently using myself from the sources for 2.4.20 at kernel.org These sources can be found under /usr/src/linux-2.4.20 with a softlink /usr/src/linux -> /usr/src/linux-2.4.20

The attached XFree86.log is from my first try with the sources of the nvidia driver.

The problem I now have is that the .run Script can't find my kernel header files. I have tried it with sh NVIDIA-Linux-x86-1.0-4349 --kernel-path /usr/src/linux (and various others) If there is one that you think I definetly have to try please don't hesitate to tell me.

Any hints?

mowses
04-08-03, 05:22 AM
Could it be a problem with my selfcompiled kernel?

bwkaz
04-08-03, 08:40 AM
Post the installer log file, /var/log/nvidia-installer.log

mowses
04-08-03, 09:03 AM
As you can see, the first one is without a --kernel-include-path the second with.

I just noticed that it seems to run just fine, but the nvidia.o can't be found.

bwkaz
04-08-03, 12:46 PM
It finds nvidia.o, but the error is "couldn't find the kernel version the module was compiled for". :confused:

Umm... just a couple of things to try -- is the kernel source directory (/usr/src/linux-2.4.20) mrproper'ed? If not, do it, then copy the right .config file into there, and run make oldconfig dep to reconfigure the files in there (especially include/linux.version.h).

Which kernel version are you running? The install script, on the first try, thinks that you're using kernel 2.4.20200303231753, which is almost assuredly wrong, unless that's what uname -r is telling you -- is it?

mowses
04-08-03, 02:01 PM
I did:
make mrproper I hope that is what you meant by mrproper'ed
After that I did a make oldconfig && dep which didn't work so I did a make dep afterwards because the make oldconfig seems to have worked.

I have to admit that I am really running 2.4.20200303231753 even uname -r tells me that. When I compiled my kernel I did it with make xconfig and saved the config file somewhere else. Myabe that caused the Problems?

The 2.4.20 should be obviuos, the rest is a timestamp. 2003.03.23 at 17:53h I thought that would be a pretty clever way to name my kernels, but I guess it wasn't. ;-)

After I did all that it still gives me the same mistake. :-(

Should I recompile the Kernel "the classic" way (whichever that is) and try again? I have read of so many people running the nvidia script without problems... So I guess it must have something to do with me and not the drivers...

In case it is usefull, the "new" nvidia-installer.log

bwkaz
04-08-03, 03:25 PM
OK, on that error message, I've Googled around a bit for it, and found this:

http://www.sandelman.ottawa.on.ca/linux-ipsec/html/2001/05/msg00563.html

Where someone says it sounds like the kernel you're running isn't the kernel that the modules were compiled for. Is that the case?

What I do:

1) Compile a new kernel (if I have it), selecting module support, and module version info (that might be the other thing that's missing -- does your kernel have "module version info" selected?)
2) Boot to that new kernel (THIS IS IMPORTANT ;))
3) Then run the nVidia installer.

Edit: What version of modutils do you have? insmod -V will tell you.

mowses
04-08-03, 03:50 PM
an insmod -v gave insmod version 2.4.15

In the meantime I compiled a new Kernel with the old configfile but still the same.

My /usr/src/linux-2.4.20/.config tells me the following:

#
# Automatically generated make config: don't edit
#
CONFIG_X86=y
# CONFIG_SBUS is not set
CONFIG_UID16=y

#
# Code maturity level options
#
# CONFIG_EXPERIMENTAL is not set

#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODVERSIONS=y
CONFIG_KMOD=y


I assume that means that module support and module version info are enabled.

Is it correct that I do:

make clean
make mrproper
make xconfig
make dep
make modules
make modules_install
make bzImage

in that order and without rebooting?

I am asking that because in the follow-up to the link you posted it sounds as if you have to do the make modules modules_install after the make bzImage and after rebooting.

bwkaz
04-08-03, 04:51 PM
I usually do mrproper, menuconfig (which is the same as xconfig, just doesn't require Tk), dep, bzImage, modules, modules_install, in that order. Without rebooting.

You might want to clean out your /lib/modules/<version> directory, too. Something old might be laying around in there.

mowses
04-09-03, 02:07 AM
By cleaning out you mean a rm -Rf /lib/modules/<version> ? ;-) Just to make sure...

I'll do that and then try your way of compiling the kernel.

Does it make any difference whether I do the make stuff with X running or in the console?

And by the way, it's great that you are helping me! :-))

Update:
Your order of compiling gave me an error with the make modules_install. It said something like:

ln: when making multiple links, last argument must be a directory
make: *** [_modinst_] Error 1


So now I am doing a new compiling session. And because my PC being an old Pentium 200 MMX it takes about 30min ;-)

The new round failed again while doing the make modules_install.

Mybe I should try it with the debian standard kernel...

mowses
04-09-03, 06:55 AM
It worked! :)

I don't really know what it was but it is working! I removed the whole kernel source and /lib/modules that I didn't need. After that I unpacked the kernelsources again (same tar.bz2) and compiled a new kernel the way I compiled the old one and using the same old config file.

Then without much hope I started the NVIDIA.run script and things went quite different than before. After some time it said everything went fine and I should reconfigure my XF86Config file. That done I typed startx and experienced a big shock, because the nvidia driver could not be found. I was just about to post here when I thought of doing an insmod nvidia. The driver loaded and I gave it another try.

Tada! :)

X starts and I am seeing a nice Nvidia logo! Now on to the next stage of 3D...

Thank you very very much for your patience! Another happy linuxer is born and maybe my changing from win2k to debian is not so far away now.

mowses
04-09-03, 07:01 AM
Maybe it helped that I renamed the kernel to 2.4.20-nvidia ;-)

In case someone is interested in the log files:

bwkaz
04-09-03, 07:36 AM
Yes, the rename might have helped (I assume you did the rename by editing the top-level Makefile, right?). Glad it's working now! :)

mowses
04-09-03, 07:45 AM
Yes, I changed my sheer endless EXTRAVERSION = 200303231753 to a more moderate
EXTRAVERSION = -nvidia in the top level Makefile.

Do you seriously believe that this might have helped or did I miss the joke?

Yes it is finally working.

Is there a simple way to test the openGL abilitys of my grapicscard? At the moment I am trying to compile wine and after that install Counter Strike that should tell me but I'd like to have less possibilitys for errors.