On Monday 23 September 2002 05:01 pm, Gary Traffanstedt wrote:
> > You can get the .src.rpm files from NVidia, get the NVIDIA-GLX and
> > NVIDIAkernel source rpms. I think they are still the 1.0-2960.src.rpm
> > files. Down load them to a directory in home named as you like it. Then
> > from a console su and give root password, at the prompt do " rpm
> > --rebuild NVIDIA* " and hit enter you should get a whole bunch of script
> > and then in the end return to the prompt. At that prompt the change
> > directory using " cd /usr/src/RPM/RPMS/i586" then at the new prompt type
> > "ls" you should see the list of two rpms you just built. then do " urpmi
> > NVIDIA* " and it will install the rpms. The Nvidia site tells what files
> > (etc/x11/xconfig-4 or something close to that) to edit and what to edit.
> > Sorry if this is more info than you need but it is hard for me to tell
> > what level of understanding you are at. HTH
>
> I've tried two approaches and neither have worked. First I tried to build
> the source rpm and when that failed, I tried to use the binary for MDK 8.2.
> That installed but didn't work. I have an smp machine which if I understand
> correctly, makes a big difference. I followed your directions above and
> when I try to compile the source rpm, here is the output that I get:
>
> [root@gary nvidia]# rpm --rebuild NVIDIA_kernel-1.0-3123.src.rpm
> Installing NVIDIA_kernel-1.0-3123.src.rpm
> Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.35480
> + umask 022
> + cd /usr/src/RPM/BUILD
> + cd /usr/src/RPM/BUILD
> + rm -rf NVIDIA_kernel-1.0-3123
> + /bin/gzip -dc /usr/src/RPM/SOURCES/NVIDIA_kernel-1.0-3123.tar.gz
> + tar -xf -
> + STATUS=0
> + '[' 0 -ne 0 ']'
> + cd NVIDIA_kernel-1.0-3123
> + exit 0
> Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.94779
> + umask 022
> + cd /usr/src/RPM/BUILD
> + cd NVIDIA_kernel-1.0-3123
> + set +e
> ++ rpm -q --queryformat '%{VERSION}' rpm
> + RPMVERSION=4.0.4
> ++ echo 4.0.4
> ++ awk -F . '{print $1;}'
> + RPMMAJOR=4
> ++ echo 4.0.4
> ++ awk -F . '{print $2;}'
> + RPMMINOR=0
> ++ echo 4.0.4
> ++ awk -F . '{print $3;}'
> + RPMPATCH=4
> + '[' 4 -le 3 -a 0 -le 0 -a 4 -lt 4 ']'
> + make NVdriver
> echo \#define NV_COMPILER \"`cc -v 2>&1 | tail -1`\" > nv_compiler.h
> cc -c -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts
> -Wparentheses -Wpointer-arith -Wcast-qual -Wno-multichar -O -MD
> -D__KERNEL__ -DMODULE -D_LOOSE_KERNEL_NAMES -DNTRM -D_GNU_SOURCE
> -DRM_HEAPMGR
> -D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1
> -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=3123 -DNV_UNIX -DNV_LINUX
> -DNVCPU_X86 -I. -I/usr/src/linux/include -Wno-cast-qual nv.c
> In file included from /usr/include/linux/prefetch.h:13,
> from /usr/include/linux/list.h:6,
> from /usr/include/linux/module.h:11,
> from nv-linux.h:28,
> from nv.c:14:
> /usr/include/asm/processor.h:55: `CONFIG_X86_L1_CACHE_SHIFT' undeclared
> here (not in a function)
> /usr/include/asm/processor.h:55: requested alignment is not a constant
> In file included from /usr/include/linux/module.h:296,
> from nv-linux.h:28,
> from nv.c:14:
> /usr/include/linux/version.h:2:2: #error
> "======================================================="
> /usr/include/linux/version.h:3:2: #error "You should not include
> /usr/include/{linux,asm}/ header"
> /usr/include/linux/version.h:4:2: #error "files directly for the
> compilation of kernel modules."
> /usr/include/linux/version.h:5:2: #error ""
> /usr/include/linux/version.h:6:2: #error "glibc now uses kernel header
> files from a well-defined"
> /usr/include/linux/version.h:7:2: #error "working kernel version (as
> recommended by Linus Torvalds)"
> /usr/include/linux/version.h:8:2: #error "These files are glibc internal
> and may not match the"
> /usr/include/linux/version.h:9:2: #error "currently running kernel. They
> should only be"
> /usr/include/linux/version.h:10:2: #error "included via other system header
> files - user space"
> /usr/include/linux/version.h:11:2: #error "programs should not directly
> include <linux/*.h> or"
> /usr/include/linux/version.h:12:2: #error "<asm/*.h> as well."
> /usr/include/linux/version.h:13:2: #error ""
> /usr/include/linux/version.h:14:2: #error "To build kernel modules please
> do the following:"
> /usr/include/linux/version.h:15:2: #error ""
> /usr/include/linux/version.h:16:2: #error " o Have the kernel sources
> installed"
> /usr/include/linux/version.h:17:2: #error ""
> /usr/include/linux/version.h:18:2: #error " o Make sure that the symbolic
> link"
> /usr/include/linux/version.h:19:2: #error " /lib/modules/`uname -r`/build
> exists and points to"
> /usr/include/linux/version.h:20:2: #error " the matching kernel source
> directory"
> /usr/include/linux/version.h:21:2: #error ""
> /usr/include/linux/version.h:22:2: #error " o Now copy
> /boot/vmlinuz.version.h to"
> /usr/include/linux/version.h:23:2: #error " /lib/modules/`uname
> -r`/build/include/linux/version.h"
> /usr/include/linux/version.h:24:2: #error ""
> /usr/include/linux/version.h:25:2: #error " o When compiling, make sure to
> use the following"
> /usr/include/linux/version.h:26:2: #error " compiler option to use the
> correct include files:"
> /usr/include/linux/version.h:27:2: #error ""
> /usr/include/linux/version.h:28:2: #error " -I/lib/modules/`uname
> -r`/build/include"
> /usr/include/linux/version.h:29:2: #error ""
> /usr/include/linux/version.h:30:2: #error " instead of"
> /usr/include/linux/version.h:31:2: #error ""
> /usr/include/linux/version.h:32:2: #error " -I/usr/include/linux"
> /usr/include/linux/version.h:33:2: #error ""
> /usr/include/linux/version.h:34:2: #error " Please adjust the Makefile
> accordingly."
> /usr/include/linux/version.h:35:2: #error
> "======================================================="
> In file included from nv-linux.h:28,
> from nv.c:14:
> /usr/include/linux/module.h:298: parse error before "UTS_RELEASE"
> In file included from nv-linux.h:29,
> from nv.c:14:
> /usr/include/linux/version.h:2:2: #error
> "======================================================="
> /usr/include/linux/version.h:3:2: #error "You should not include
> /usr/include/{linux,asm}/ header"
> /usr/include/linux/version.h:4:2: #error "files directly for the
> compilation of kernel modules."
> /usr/include/linux/version.h:5:2: #error ""
> /usr/include/linux/version.h:6:2: #error "glibc now uses kernel header
> files from a well-defined"
> /usr/include/linux/version.h:7:2: #error "working kernel version (as
> recommended by Linus Torvalds)"
> /usr/include/linux/version.h:8:2: #error "These files are glibc internal
> and may not match the"
> /usr/include/linux/version.h:9:2: #error "currently running kernel. They
> should only be"
> /usr/include/linux/version.h:10:2: #error "included via other system header
> files - user space"
> /usr/include/linux/version.h:11:2: #error "programs should not directly
> include <linux/*.h> or"
> /usr/include/linux/version.h:12:2: #error "<asm/*.h> as well."
> /usr/include/linux/version.h:13:2: #error ""
> /usr/include/linux/version.h:14:2: #error "To build kernel modules please
> do the following:"
> /usr/include/linux/version.h:15:2: #error ""
> /usr/include/linux/version.h:16:2: #error " o Have the kernel sources
> installed"
> /usr/include/linux/version.h:17:2: #error ""
> /usr/include/linux/version.h:18:2: #error " o Make sure that the symbolic
> link"
> /usr/include/linux/version.h:19:2: #error " /lib/modules/`uname -r`/build
> exists and points to"
> /usr/include/linux/version.h:20:2: #error " the matching kernel source
> directory"
> /usr/include/linux/version.h:21:2: #error ""
> /usr/include/linux/version.h:22:2: #error " o Now copy
> /boot/vmlinuz.version.h to"
> /usr/include/linux/version.h:23:2: #error " /lib/modules/`uname
> -r`/build/include/linux/version.h"
> /usr/include/linux/version.h:24:2: #error ""
> /usr/include/linux/version.h:25:2: #error " o When compiling, make sure to
> use the following"
> /usr/include/linux/version.h:26:2: #error " compiler option to use the
> correct include files:"
> /usr/include/linux/version.h:27:2: #error ""
> /usr/include/linux/version.h:28:2: #error " -I/lib/modules/`uname
> -r`/build/include"
> /usr/include/linux/version.h:29:2: #error ""
> /usr/include/linux/version.h:30:2: #error " instead of"
> /usr/include/linux/version.h:31:2: #error ""
> /usr/include/linux/version.h:32:2: #error " -I/usr/include/linux"
> /usr/include/linux/version.h:33:2: #error ""
> /usr/include/linux/version.h:34:2: #error " Please adjust the Makefile
> accordingly."
> /usr/include/linux/version.h:35:2: #error
> "======================================================="
> In file included from nv.c:14:
> nv-linux.h:31:40: missing binary operator before '('
> nv-linux.h:33:42: missing binary operator before '('
> nv-linux.h:35:42: missing binary operator before '('
> nv-linux.h:37:42: missing binary operator before '('
> nv-linux.h:39:42: missing binary operator before '('
> nv-linux.h:43:4: #error This driver does not support 2.6.x or newer
> kernels! In file included from /usr/include/asm/hardirq.h:6,
> from /usr/include/linux/interrupt.h:45,
> from nv-linux.h:64,
> from nv.c:14:
> /usr/include/linux/irq.h:65: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here
> (not in a function)
> /usr/include/linux/irq.h:65: requested alignment is not a constant
> In file included from /usr/include/linux/interrupt.h:45,
> from nv-linux.h:64,
> from nv.c:14:
> /usr/include/asm/hardirq.h:16: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here
> (not in a function)
> /usr/include/asm/hardirq.h:16: requested alignment is not a constant
> In file included from nv-linux.h:64,
> from nv.c:14:
> /usr/include/linux/interrupt.h:128: `CONFIG_X86_L1_CACHE_SHIFT' undeclared
> here (not in a function)
> /usr/include/linux/interrupt.h:128: requested alignment is not a constant
> nv-linux.h:111:28: linux/autoconf.h: No such file or directory
> nv.c:99:65: missing binary operator before '('
> nv.c:697:65: missing binary operator before '('
> nv.c:1011:65: missing binary operator before '('
> nv.c:1040:65: missing binary operator before '('
> nv.c:1383:65: missing binary operator before '('
> nv.c: In function `nv_kern_mmap':
> nv.c:1386: warning: implicit declaration of function `pgprot_writecombine'
> nv.c:1386: incompatible types in assignment
> nv.c:2926:65: missing binary operator before '('
> make: *** [nv.o] Error 1
> + exit 0
> Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.94779
> + umask 022
> + cd /usr/src/RPM/BUILD
> + cd NVIDIA_kernel-1.0-3123
> + rm -f /tmp/files.lst
> + '[' -z '' ']'
> ++ uname -r
> + export TARGET_KERNEL=2.4.19-9mdk
> + TARGET_KERNEL=2.4.19-9mdk
> + '[' -d /lib/modules/2.4.19-9mdk/kernel ']'
> + INSTALLPATH=/lib/modules/2.4.19-9mdk/kernel/drivers/video
> + mkdir -p
> /var/tmp/NVIDIA_kernel-1.0//lib/modules/2.4.19-9mdk/kernel/drivers/video
> + install -m 0444 NVdriver
> /var/tmp/NVIDIA_kernel-1.0//lib/modules/2.4.19-9mdk/kernel/drivers/video
> install: cannot stat `NVdriver': No such file or directory
> error: Bad exit status from /var/tmp/rpm-tmp.94779 (%install)
>
>
> RPM build errors:
> Bad exit status from /var/tmp/rpm-tmp.94779 (%install)
> [root@gary nvidia]#
>
> Should I try finding an older version of this driver?
> -Gary
Just at a guess from what I see, you do not have the "kernel-sources"
installed. They are on the d/l CDs. Not sure what other problems you may have
with the smp configuration. The discussions on the proprietary vs open
source cards go on, but I have yet to find a open source card that has the
frame rate vs cost of the nvidia. The radeon cards in the 8500 class are
supposed to be open sourced soon I hear, but they are in the $140 + range and
I don't want to spend more money on a card until I know it will be open
source. So there we are, stuck with NVidia, Hope the kernel-sources file is
the answer to your problem. HTH
--
Dennis M. linux user #180842
Want to buy your Pack or Services from MandrakeSoft?
Go to http://www.mandrakestore.com