rpm --rebuild: No such file or directory
I'm trying to rebuild NVIDIA_kernel drivers in RedHat 7.2.. As root running the command, I get the vauge error listed in the title. I've tried using the full path in the command line yet the problem persists.
|
Egad.. my first question here and I think i've answered it myself. "twas and operator error on my behalf.. dev software was not installed
|
the nvidia RPM files generally don't work
you should ALWAYS compile from source. |
Right, which is why i was trying to rebuild them
..now I have another problem with rebuilding them :) By default, RedHat 7.2 I suppose does not install the source files of the kernel. So, when I throw the command rpm --rebuild NVIDIA_kernel.src.rpm it reports some ambigous errors dealing with having to use the kernel's source as reference. Needless to say, the location I'd expect to find that source (/usr/src/) has nothing but 'redhat' in it. I've chased links around to end up up at /lib/moduals/2.4.7-10 where i'm not at a loss as how to actually commit, much less locate, the 'real' kernel in the --rebuild proccess. |
you won't find redhat listed in /usr/src. redhat is just the company that puts their distro together and fiddles with things so they *just* break when you don't want them to ;-).
install kernel-source-versionwhatever.rpm from the cdr's. sorry, when i said compile from source, i meant to say use the tar.gz files instead of the rpm. |
$make install
rm -f nv.o os-interface.o os-registry.o Module-linux 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=1541 -I. -I/lib/modules/2.4.7-10/build/include nv.c In file included from nv.c:50: /usr/include/linux/modversions.h:1:2: #error Modules should never use kernel-headers system headers, /usr/include/linux/modversions.h:2:2: #error but rather headers from an appropriate kernel-source package. /usr/include/linux/modversions.h:3:2: #error Change -I/usr/src/linux/include (or similar) to /usr/include/linux/modversions.h:4:2: #error -I/lib/modules/$(uname -r)/build/include /usr/include/linux/modversions.h:5:2: #error to build against the currently-running kernel. make: *** [nv.o] Error 1 Thats the errata from a 'make install' of the tar file. Basically, the same thing the rpm reports.. just not as short. |
By the look of that, you've not got the kernel headers installed. stick them in too.
might help. i hope. |
No suprise here.. adding the header rpm from the CD didn't happen. Using 'force', it completed with no errors, however, nothing has changed from last.
in /lib/moduals/2.4.7-10/ the symbolic link 'build' is broken. It thinks it pointing to /usr/src/linux-2.4.7-10 where ofcourse nothing exists. should the rpms add with no qualm? |
well, it shouldn't point to /usr/src as that's source code, not compiled. ls -l should tell you where the link is trying to point to.
what do you mean by 'didn't happen'? f you've installed the kernel source rpm, then it will always be located in /usr/src/linux-version/ You might need to symlink the source directory to an alternative name, such as just /usr/src/linux/ as some programs have trouble finding that location. but source shouldn't really be needed, it should only require headers to get the job done. i can't find out where the headers are meant to be at the moment, think it's /usr/include/linux, not sure tho. they really do need to be installed properly tho. if you 're compiling from source, you should be able to define the locatino of the headers as an ./configure option, if it's simply a case of not being able to find them |
All times are GMT -5. The time now is 01:08 AM. |