![]() |
Problems installing 5328 driver
Hi.
Probably a very simple configuration problem, but I can't get past it after two hours and reading everything I can find. I have the 5328 driver to install. This is my first whack at the process. I have the linux 2.6.0 source tree in /usr/src/linux-2.6.0; /usr/src/linux is a symlink to /usr/src/linux-2.6.0; /usr/include has the glibc-2.3.2 headers in it (because I am using glibc-2.3.2); and /usr/include/linux is a symlink to /usr/src/linux. When I use the installation tool, the progress bar get to the end, and I get a final error "failed to install...". nvidia-installer.log contains: option status: license pre-accepted : false update : false force update : false expert : false uninstall : false driver info : false no precompiled interface: false no ncurses color : false query latest driver ver : false OpenGL header files : false no questions : false silent : false XFree86 install prefix : /usr/X11R6 OpenGL install prefix : /usr Installer install prefix: /usr kernel include path : (not specified) kernel install path : (not specified) proc mount point : /proc ui : (not specified) tmpdir : /tmp ftp site : ftp://download.nvidia.com Using: nvidia-installer ncurses user interface -> License accepted. -> There appears to already be a driver installed on your system (version: 1.0- 4363). As part of installing this driver (version: 1.0-5328), the existing driver will be uninstalled. Are you sure you want to continue? ('no' will a bort installation) (Answer: Yes) -> No precompiled kernel interface was found to match your kernel; would you li ke the installer to attempt to download a kernel interface for your kernel f rom the NVIDIA ftp site (ftp://download.nvidia.com)? (Answer: No) -> No precompiled kernel interface was found to match your kernel; this means that the installer will need to compile a new kernel interface. -> Kernel include path: '/usr/src/linux/include' -> Performing cc_version_check with CC="cc". -> Cleaning kernel module build directory. executing: 'cd ./usr/src/nv; make clean'... rm -f nv.o os-agp.o os-interface.o os-registry.o nv-linux.o nv_compiler.h * .d NVdriver nvidia.o -> Building kernel module: executing: 'cd ./usr/src/nv; make nvidia.o SYSINCLUDE=/usr/src/linux/include '... echo \#define NV_COMPILER \"`cc -v 2>&1 | tail -n 1`\" > nv_compiler.h cc -c -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wp arentheses -Wpointer-arith -Wno-multichar -Werror -O -MD -D__KERNEL__ -DMO DULE -D_LOOSE_KERNEL_NAMES -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D__KE RNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=5 328 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -I. -I/usr/s rc/linux/include -Wno-cast-qual -Wno-error nv.c In file included from /usr/src/linux/include/asm/smp.h:18, from /usr/src/linux/include/linux/smp.h:17, from /usr/src/linux/include/linux/sched.h:23, from /usr/src/linux/include/linux/module.h:10, from nv-linux.h:29, from nv.c:14: /usr/src/linux/include/asm/mpspec.h:6:25: mach_mpspec.h: No such file or dir ectory In file included from /usr/src/linux/include/asm/smp.h:18, from /usr/src/linux/include/linux/smp.h:17, from /usr/src/linux/include/linux/sched.h:23, from /usr/src/linux/include/linux/module.h:10, from nv-linux.h:29, from nv.c:14: /usr/src/linux/include/asm/mpspec.h:8: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:9: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:10: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:12: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:19: `MAX_APICS' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:20: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:20: conflicting types for `mp_bus_id_to_ type' /usr/src/linux/include/asm/mpspec.h:8: previous declaration of `mp_bus_id_to _type' /usr/src/linux/include/asm/mpspec.h:22: `MAX_IRQ_SOURCES' undeclared here (n ot in a function) /usr/src/linux/include/asm/mpspec.h:24: `MAX_MP_BUSSES' undeclared here (not in a function) /usr/src/linux/include/asm/mpspec.h:24: conflicting types for `mp_bus_id_to_ pci_bus' /usr/src/linux/include/asm/mpspec.h:12: previous declaration of `mp_bus_id_t o_pci_bus' /usr/src/linux/include/asm/mpspec.h:54: `MAX_APICS' undeclared here (not in a function) In file included from /usr/src/linux/include/asm/smp.h:20, from /usr/src/linux/include/linux/smp.h:17, from /usr/src/linux/include/linux/sched.h:23, from /usr/src/linux/include/linux/module.h:10, from nv-linux.h:29, from nv.c:14: /usr/src/linux/include/asm/io_apic.h:120: `MAX_IRQ_SOURCES' undeclared here (not in a function) /usr/src/linux/include/asm/io_apic.h:120: conflicting types for `mp_irqs' /usr/src/linux/include/asm/mpspec.h:22: previous declaration of `mp_irqs' In file included from /usr/src/linux/include/linux/smp.h:17, from /usr/src/linux/include/linux/sched.h:23, from /usr/src/linux/include/linux/module.h:10, from nv-linux.h:29, from nv.c:14: /usr/src/linux/include/asm/smp.h:73:26: mach_apicdef.h: No such file or dire ctory In file included from /usr/src/linux/include/linux/smp.h:17, from /usr/src/linux/include/linux/sched.h:23, from /usr/src/linux/include/linux/module.h:10, from nv-linux.h:29, from nv.c:14: /usr/src/linux/include/asm/smp.h: In function `hard_smp_processor_id': /usr/src/linux/include/asm/smp.h:77: warning: implicit declaration of functi on `GET_APIC_ID' In file included from nv.c:14: nv-linux.h:51:4: #error This driver does not support 2.6.x or newer kernels! nv-linux.h:69:75: linux/tqueue.h: No such file or directory nv-linux.h:78:75: linux/wrapper.h: No such file or directory In file included from /usr/src/linux/include/linux/irq.h:20, from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/interrupt.h:11, from nv-linux.h:79, from nv.c:14: /usr/src/linux/include/asm/irq.h:16:25: irq_vectors.h: No such file or direc tory In file included from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/interrupt.h:11, from nv-linux.h:79, from nv.c:14: /usr/src/linux/include/linux/irq.h: At top level: /usr/src/linux/include/linux/irq.h:70: `NR_IRQS' undeclared here (not in a f unction) In file included from /usr/src/linux/include/linux/irq.h:72, from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/interrupt.h:11, from nv-linux.h:79, from nv.c:14: /usr/src/linux/include/asm/hw_irq.h:28: `NR_IRQ_VECTORS' undeclared here (no t in a function) /usr/src/linux/include/asm/hw_irq.h:31: `NR_IRQS' undeclared here (not in a function) In file included from nv.c:14: nv-linux.h:420:2: #error "Couldn't determine number of arguments expected by remap_page_range!" In file included from nv.c:14: nv-linux.h: In function `NV_IRQL_IS_RAISED': nv-linux.h:478: warning: implicit declaration of function `__save_flags' nv.c: In function `nvos_malloc_pages': nv.c:404: warning: implicit declaration of function `mem_map_reserve' nv.c:450: warning: implicit declaration of function `mem_map_unreserve' nv.c: In function `init_module': nv.c:885: invalid use of undefined type `struct tq_struct' nv.c:886: dereferencing pointer to incomplete type nv.c:887: dereferencing pointer to incomplete type nv.c:888: dereferencing pointer to incomplete type nv.c: In function `nv_kern_vma_open': nv.c:1036: warning: `MOD_INC_USE_COUNT' is deprecated (declared at /usr/src/ linux/include/linux/module.h:482) nv.c: In function `nv_kern_vma_release': nv.c:1070: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/src/ linux/include/linux/module.h:494) nv.c: In function `nv_kern_open': nv.c:1263: warning: passing arg 2 of `request_irq' from incompatible pointer type nv.c:1291: warning: `MOD_INC_USE_COUNT' is deprecated (declared at /usr/src/ linux/include/linux/module.h:482) nv.c: In function `nv_kern_close': nv.c:1384: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/src/ linux/include/linux/module.h:494) nv.c: In function `nv_kern_mmap': nv.c:1430: warning: implicit declaration of function `NV_REMAP_PAGE_RANGE' nv.c:1552: warning: `MOD_INC_USE_COUNT' is deprecated (declared at /usr/src/ linux/include/linux/module.h:482) nv.c: In function `nv_kern_ioctl': nv.c:1651: structure has no member named `uc' nv.c: In function `nv_kern_isr': nv.c:1794: warning: implicit declaration of function `queue_task' nv.c:1794: `tq_immediate' undeclared (first use in this function) nv.c:1794: (Each undeclared identifier is reported only once nv.c:1794: for each function it appears in.) nv.c:1795: warning: implicit declaration of function `mark_bh' nv.c:1795: `IMMEDIATE_BH' undeclared (first use in this function) nv.c: In function `nv_kern_ctl_open': nv.c:1917: warning: `MOD_INC_USE_COUNT' is deprecated (declared at /usr/src/ linux/include/linux/module.h:482) nv.c: In function `nv_kern_ctl_close': nv.c:1960: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/src/ linux/include/linux/module.h:494) nv.c: In function `nv_kern_read_agpinfo': nv.c:2095: structure has no member named `name' nv-linux.h: At top level: nv.c:41: storage size of `nv_bottom_halves' isn't known make: *** [nv.o] Error 1 -> Error. ERROR: Unable to build the NVIDIA kernel module. What do I have set up incorrectly? thx, jbh |
Ok, stupid admission of guilt. I shouldn't have had /usr/src/linux being a symlink
to /usr/src/linux-2.6.0. I put it back to what it was, which was a set of headers from long ago (circa 2.4-something kernel source). Using the Makefile to build from that, got much better results, but still not a good build: make[1]: Entering directory `/usr/local/packages/incoming/NVIDIA-Linux-x86-1.0-5328-pkg1/usr/src/nv' cc -c -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -Wno-multichar -Werror -O -MD -D__KERNEL__ -DMODULE -D_LOOSE_KERNEL_NAMES -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=5328 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -DREMAP_PAGE_RANGE_4 -I. -I/usr/src/linux/include -Wno-cast-qual -Wno-error nv.c cc -c -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -Wno-multichar -Werror -O -MD -D__KERNEL__ -DMODULE -D_LOOSE_KERNEL_NAMES -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=5328 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -DREMAP_PAGE_RANGE_4 -I. -I/usr/src/linux/include -Wno-cast-qual -Wno-error os-agp.c cc -c -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -Wno-multichar -Werror -O -MD -D__KERNEL__ -DMODULE -D_LOOSE_KERNEL_NAMES -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=5328 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -DREMAP_PAGE_RANGE_4 -I. -I/usr/src/linux/include -Wno-cast-qual -Wno-error os-interface.c cc -c -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wpointer-arith -Wno-multichar -Werror -O -MD -D__KERNEL__ -DMODULE -D_LOOSE_KERNEL_NAMES -DNTRM -D_GNU_SOURCE -D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=5328 -DNV_UNIX -DNV_LINUX -DNV_INT64_OK -DNVCPU_X86 -DREMAP_PAGE_RANGE_4 -I. -I/usr/src/linux/include -Wno-cast-qual -Wno-error os-registry.c ld -r -o nv-linux.o nv.o os-agp.o os-interface.o os-registry.o ld -r -o nvidia.o nv-linux.o nv-kernel.o FATAL: Module nvidia not found. make[1]: *** [package-install] Error 1 make[1]: Leaving directory `/usr/local/packages/incoming/NVIDIA-Linux-x86-1.0-5328-pkg1/usr/src/nv' make: *** [kernel_module_install] Error 2 At this point, I look in the usr/src/nv directory, and there is indeed a file nvidia.o that was created. So I execute by hand the step that died: ld -r -o nvidia.o nv-linux.o nv-kernel.o and that completes with no issues. Examining the makefile, I see there is some 'rmmod-check' that appears to be what's dying. If I then do make -i install because I have no clue what is dying, I get a full completion of the make install, except for this one error as shown above. If I then do an insmod nvidia.o, I get: insmod: error inserting 'nvidia.o': -1 Invalid module format So now I'm truly at wit's end. For ref - I have no problems doing other compilations of things (like the kernel, and other modules for other purposes). I'm suspecting that somehow there is something wrong with what I have in /usr/src/linux (like, it's somehow out of sync with the rest of my glibc universe), but if that were the case, I should be having problems with other things, and I'm not. For ref also - I don't use a particular distribution. My box is sorta slackwarish, though most everything I build from scratch. I do, however, retain the basic (and current, 9.1) slackware file system, kernel devices, and certain packages from the current slackware release - including glibc 2.3.2 and gcc 3.2.3. thx for any help - and sorry about the last post. My bad. jbh (Oh - also, don't know why the "Riva 128" is posted under my name; I didn't set that. I have a GeForce4 MX 440 SE - based evga.com video card). |
New observation on 5328 with linux 2.6.0
Alrighty then. It seems maybe I wasn't so screwed up after all. From what I can
now surmise: a. Rifling through all that error stream from using the 2.6.0 headers, I found this little pearl somewhere in the middle: In file included from nv.c:14: nv-linux.h:51:4: #error This driver does not support 2.6.x or newer kernels! So from that I conclude: b. There was nothing all that bad about using the 2.4-something headers, other than the fact that the resulting module would be a 2.4-ish module, and a 2.6.0 kernel won't be happy with that - hence, the "bad format" type message. So then I guess my last question will be - any idea when yet a new driver might be released that would support 2.6.X? thx, jbh |
| All times are GMT -5. The time now is 09:37 AM. |
Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Copyright ©1998 - 2013, nV News.