|
|
#1 | |
|
Registered User
Join Date: Apr 2003
Posts: 14
|
When I do "make" on Nvidia Kernel module, I get the below error. What shall I do ? Consider I am newbie.
Thanks rm -f nv.o os-interface.o os-registry.o Module-linux nv_compiler.h NVdriver cc -c -Wall -Wno-unknown-pragmas -Wno-multichar -O -D__KERNEL__ -DMODULE -D_LOOSE_KERNEL_NAMES -D_X86_=1 -Di386=1 -DUNIX -DLINUX -DNV4_HW -DNTRM -DRM20 -D_GNU_SOURCE -DRM_HEAPMGR -D_LOOSE_KERNEL_NAMES -DNV_MAJOR_VERSION=1 -DNV_MINOR_VERSION=0 -DNV_PATCHLEVEL=2314 -I. -I/usr/src/linux/include 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.c:25: /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:297, from nv.c:25: /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:25: /usr/include/linux/module.h:299: parse error before "UTS_RELEASE" /usr/include/linux/module.h: In function `print_symbol': /usr/include/linux/module.h:433: `ESRCH' undeclared (first use in this function) /usr/include/linux/module.h:433: (Each undeclared identifier is reported only once /usr/include/linux/module.h:433: for each function it appears in.) In file included from nv-linux.h:24, from nv.c:27: /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:27: nv-linux.h:31:40: missing binary operator before '(' nv-linux.h:34:42: missing binary operator before '(' nv-linux.h:37:44: missing binary operator before '(' nv-linux.h:205:40: missing binary operator before '(' nv.c:197:59: missing binary operator before '(' nv.c:244:40: missing binary operator before '(' nv.c:760:59: missing binary operator before '(' nv.c:1088:59: missing binary operator before '(' nv.c:1117:59: missing binary operator before '(' nv.c:1468:59: missing binary operator before '(' nv.c: In function `nv_kern_mmap': nv.c:1471: warning: implicit declaration of function `pgprot_writecombine' nv.c:1471: incompatible types in assignment nv.c:2287:40: missing binary operator before '(' nv.c:2336:42: missing binary operator before '(' nv.c:2725:59: missing binary operator before '(' make: *** [nv.o] Error 1 |
|
|
|
|
|
|
#2 | |
|
Registered User
Join Date: Sep 2002
Posts: 2,262
|
Install your distro's kernel-source package.
If you're using RedHat 9, then you must also use driver 4349, because of changes in RH 9's C library and kernel make it very hard to get older drivers to work right. If you're using any version of RedHat, then after installing the kernel-source package (make sure you get the version that matches what uname -r tells you, if you've updated your kernel at all -- if you haven't, then the appropriate package will be on the RH CDs), you must also configure it. "cd" into /usr/src/linux-<version> and run make mrproper, then open the Makefile in that directory up in any editor. Make sure that the EXTRAVERSION line doesn't contain the string "custom" -- if it does, delete it -- then save and exit the editor, cd configs, and ls. Pick the file that approximately matches your CPU, and cp thatfile'sname ../.config. Then, cd .. and run make oldconfig dep. Funnily enough, this isn't necessary for any distro other than RedHat, at least not yet. Whoa, hang on a minute, though. You're using driver 2314? That's ancient! You should probably be trying a newer version, like (if needed) 3123 or (preferably) 4349.
__________________
Registered Linux User #219692 |
|
|
|
|
|
|
#3 |
|
Registered User
Join Date: Apr 2003
Posts: 14
|
Yes but...nvchooser.sh tells me that's the correct version I have to install. Does it have sense ? I guess yes but....let me know.
FYI my distribution is Mandrake 9.1, so what is needed here ? Thanks |
|
|
|
|
|
#4 | |
|
Registered User
Join Date: Sep 2002
Posts: 2,262
|
NVchooser is deprecated.
Even back when it was useful (... I say that like it was so long ago... it was useful until March 31 when 4349 was released ), the version that it told you to get was not guaranteed to be up to date. There was a different NVchooser for every driver release; if you use the NVchooser from driver 2313, it tells you to install 2313. If you use the NVchooser from 4191, it tells you to install 4191.But don't worry about NVchooser anymore, at all. It's entirely unnecessary with the 4349 drivers -- there's only one download. With Mandrake versions up to 8.2 (inclusive), you did not have to configure the kernel sources after installing them. I believe 9.1 is the same, but I don't know for sure (it's been a while since I used Mandrake). So don't worry about the .config file, or any of the make things, or any of that; just install the kernel source and AFAIK you should be OK. If you're not, post the /var/log/nvidia-installer.log file (after running the 4349 installer).
__________________
Registered Linux User #219692 |
|
|
|
|
![]() |
| Thread Tools | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| NVIDIA Responds to Reports of Kepler V-Sync Stuttering Issue | Rieper | NVIDIA GeForce 600 Series | 13 | 03-03-13 10:56 PM |
| Intel's Ivy Bridge Core i7 3770K Overheating Issue Detailed | News | Latest Tech And Game Headlines | 0 | 05-16-12 10:40 AM |