nV News Forums

 
 

nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   NVIDIA Linux (http://www.nvnews.net/vbulletin/forumdisplay.php?f=14)
-   -   Problems installing 5328 driver (http://www.nvnews.net/vbulletin/showthread.php?t=22917)

jhiller 12-30-03 10:37 PM

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

jhiller 12-30-03 10:59 PM

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).

jhiller 12-30-03 11:32 PM

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 10:41 PM.

Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.