View Full Version : cant get it to compile for the life of me
yea, ima noob and have no idea wut im doing, i yanked the rpms for my kernel headers offa the install cd, to no avail, heres the log, anyone else know wut im doing wrong?
btw, im runnning arklinux
LordMorgul
04-21-03, 02:21 AM
ERROR: Unable to load the kernel module 'nvidia.o'. This is most likely
because the kernel module was built using the wrong kernel header files.
This error is telling you that the kernel headers you have installed (that the installer found and built with) are not correct for the kernel you are running. Check your kernel version, and make sure you have the correct kernel sources installed, you should have the same kernel version numbers for the architecture AND the sources rpms you have installed.
list your kernel rpms:
rpm -qa | grep kernel
then verify the same version is reported by:
cat /proc/version
(since I haven't run arklinux I don't know if it uses the proc filesystem, so the last command might not work)
If this is correct then you may have linking problems to your current source headers. Do you have more than one kernel source installed? That can complicate things slightly.
If the kernel sources are not properly linked you can either endeavor to fix them or build the drivers by removing the tarballs from the installer and specifying which sources to use in the makefile, this is complicated if you don't know what I'm saying, and easy if you do. Instructions should be found in the 43.49 main thread.
[root@localhost root]# rpm -qa|grep kernel
kernel-2.4.21-0.pre5.2ark
kernel-source-2.4.21-0.pre5.2ark
[root@localhost root]# cat /proc/version
Linux version 2.4.21-0.pre5.2ark (root@hank.piffio.homelinux.org) (gcc version 3.2.2 20030217 (Ark Linux 1.0 3.2.2-2ark)) #1 Sat Mar 8 04:37:52 UTC 2003
ok, verified, wut now? o.O?
LordMorgul
04-21-03, 02:51 AM
The module appears to build correctly for your architecture and kernel, I don't see the problem with building it.
Did you edit your XFree86 config file to load the driver on startup as described in the nvidia readme posted with the installer? And then reboot the machine to see the module load on startup?
file:
/etc/X11/XF86Config (XFree 4.2 and up)
or perhaps:
/etc/X11/XF86Config-4 (XFree 4.0 and up some if it was upgraded from older version)
XFree version from the command:
XFree86 -version
The edits for the file are described in the readme, comment out 'dri' add 'glx' in modules section, then change driver 'nv' to 'nvidia' in device section.
(assuming you're using a graphical login it is necessary to telinit 3;telinit 5 at least to verify loading fails, or reboot completely)
If you did edit the file, and the module fails to load, check the XFree log file at:
/var/log/XFree86.0.log
/var/log/XFree86.setup.log
The problem here is that there are unresolved symbols in the nvidia.o kernel module. Namely _mmx_memcpy and irq_stat_R3gig_5a2eb425.
Do you have a config file for your running kernel? Some distros put it in /boot, so you might start by looking there. If you can find it, then copy it to /lib/modules/$(uname -r)/build/.config, then cd into /lib/modules/$(uname -r)/build and run make clean oldconfig dep, and try the installer again.
The _mmx_memcpy especially, makes me think that your kernel sources are currently configured to enable MMX, but your running kernel was not configured that way. irq_stat may be similar; I don't really know what that function is though.
ok, as i mentioned, im a linux noob, your post made No sense to me even after thumbing thru some reference material i have.... plz explain
Edit: and to the previous post, yea, i know wut to do with xfree86.. since im new to this i read ALL readmes ect,ect,...its just that it never got to that point...
Hmm, OK... What's in your /boot directory, first of all? ls /boot and post the output.
sorry about the wait..
here it is
[root@localhost root]# ls /boot
System.map kernel.h
System.map-2.4.21-0.pre5.2ark module-info
autoconf.h module-info-2.4.21-0.pre5.2ark
autoconf.h-2.4.21-0.pre5.2ark version.h
config version.h-2.4.21-0.pre5.2ark
config-2.4.21-0.pre5.2ark vmlinuz
grub vmlinuz-2.4.21-0.pre5.2ark
initrd-2.4.21-0.pre5.2ark.img
All right, do a cp /boot/config-2.4.21-0.pre5.2ark /lib/modules/$(uname -r)/build/.config, then do a cd /lib/modules/$(uname -r)/build/ && make clean oldconfig dep. Then try the installer again.
Hi,
I'm in the same situation (newbie, Arklinux, same errors, same symbols), I tried the commands you showed before, and I keep having the same issues.
Also, I can't get the installer to succeed if I don't use the --kernel= or --kernel-include-path= options.
Would you happen to have any other hint?
Thanks for your time
-lolo
The symbols are mmx_memcpy and irq_stat, right?
If so, I don't suppose you feel up to compiling one of the kernels off www.kernel.org, do you? That would (hopefully) work better; I'm not quite sure what Arch/Ark/however they spell it (;)) did to their kernel or sources.
Hi,
Thanks for the answer.
You're right about the symbols, these are the very same ones.
As for compiling a kernel, well that's what I was trying to avoid by installing the Arklinux distro,
but I guess I cannot ask an alpha version to be perfect. I'm afraid I'll have to do just what you suggest, I don't know how many days it's gonna take me to succeed. I just hope it's not going to screw up everything I maned to configure so far.
Wish me good luck (:D )
-Lolo
Good luck. :D
There is a bit of documentation in the Documentation/Changes file in the kernel source. You can also take Ark's config file and use it as a starting point in menuconfig (or xconfig if you were going to use that); just point the *config program that you use to the config file in /boot, then change anything that you think should be changed.
vBulletin® v3.7.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.