| Melk | Boter | Bloem | Ei |
Verwijderd
Heb je de README gelezen ? Daar staan instructies in hoe dat ding aan de praat te krijgen. Zo is daar te lezen dat voor 2.2 en 2.0 kernels bepaalde handelingen gedaan moeten worden.Aan de foutmelding te zien heb je een 2.2 kernel en probeer je rshaper voor een 2.4 kernel te bakken.
in suse 7.2 zit toch al een 2.4 kernel?
| Melk | Boter | Bloem | Ei |
Als mijn suse machine is opgestart staat er: Welcome to SuSE linux 7.2 (i386) Kernel 2.4.4-4GB
edit:
Dit staat er in de text dat voorbij komt vliegen als ik make heb ingtikt:
[code]/usr/include/linux/version.h:2: #error "======================================================="
/usr/include/linux/version.h:3: #error "You should not include /usr/include/{linux,asm}/ header"
/usr/include/linux/version.h:4: #error "files directly for the compilation of kernel modules."
/usr/include/linux/version.h:5: #error ""
/usr/include/linux/version.h:6: #error "glibc now uses kernel header files from a well-defined"
/usr/include/linux/version.h:7: #error "working kernel version (as recommended by Linus Torvalds)"
/usr/include/linux/version.h:8: #error "These files are glibc internal and may not match the"
/usr/include/linux/version.h:9: #error "currently running kernel. They should only be"
/usr/include/linux/version.h:10: #error "included via other system header files - user space"
/usr/include/linux/version.h:11: #error "programs should not directly include <linux/*.h> or"
/usr/include/linux/version.h:12: #error "<asm/*.h> as well."
/usr/include/linux/version.h:13: #error ""
/usr/include/linux/version.h:14: #error "To build kernel modules please do the following:"
/usr/include/linux/version.h:15: #error ""
/usr/include/linux/version.h:16: #error " o Have the kernel sources installed"
/usr/include/linux/version.h:17: #error ""
/usr/include/linux/version.h:18: #error " o Make sure that the symbolic link"
/usr/include/linux/version.h:19: #error " /lib/modules/`uname -r`/build exists and points to"
/usr/include/linux/version.h:20: #error " the matching kernel source directory"
/usr/include/linux/version.h:21: #error ""
/usr/include/linux/version.h:22: #error " o Now copy /boot/vmlinuz.version.h to"
/usr/include/linux/version.h:23: #error " /lib/modules/`uname -r`/build/include/linux/version.h"
/usr/include/linux/version.h:24: #error ""
/usr/include/linux/version.h:25: #error " o When compiling, make sure to use the following"
/usr/include/linux/version.h:26: #error " compiler option to use the correct include files:"
/usr/include/linux/version.h:27: #error ""
/usr/include/linux/version.h:28: #error " -I/lib/modules/`uname -r`/build/include"
/usr/include/linux/version.h:29: #error ""
/usr/include/linux/version.h:30: #error " instead of"
/usr/include/linux/version.h:31: #error ""
/usr/include/linux/version.h:32: #error " -I/usr/include/linux"
/usr/include/linux/version.h:33: #error ""
/usr/include/linux/version.h:34: #error " Please adjust the Makefile accordingly."
/usr/include/linux/version.h:35: #error "======================================================="[/code]
aangezien in een beginner ben op het gebied van linux, weet ik niet waar ik dit moet veranderen
Dit staat er in de text dat voorbij komt vliegen als ik make heb ingtikt:
[code]/usr/include/linux/version.h:2: #error "======================================================="
/usr/include/linux/version.h:3: #error "You should not include /usr/include/{linux,asm}/ header"
/usr/include/linux/version.h:4: #error "files directly for the compilation of kernel modules."
/usr/include/linux/version.h:5: #error ""
/usr/include/linux/version.h:6: #error "glibc now uses kernel header files from a well-defined"
/usr/include/linux/version.h:7: #error "working kernel version (as recommended by Linus Torvalds)"
/usr/include/linux/version.h:8: #error "These files are glibc internal and may not match the"
/usr/include/linux/version.h:9: #error "currently running kernel. They should only be"
/usr/include/linux/version.h:10: #error "included via other system header files - user space"
/usr/include/linux/version.h:11: #error "programs should not directly include <linux/*.h> or"
/usr/include/linux/version.h:12: #error "<asm/*.h> as well."
/usr/include/linux/version.h:13: #error ""
/usr/include/linux/version.h:14: #error "To build kernel modules please do the following:"
/usr/include/linux/version.h:15: #error ""
/usr/include/linux/version.h:16: #error " o Have the kernel sources installed"
/usr/include/linux/version.h:17: #error ""
/usr/include/linux/version.h:18: #error " o Make sure that the symbolic link"
/usr/include/linux/version.h:19: #error " /lib/modules/`uname -r`/build exists and points to"
/usr/include/linux/version.h:20: #error " the matching kernel source directory"
/usr/include/linux/version.h:21: #error ""
/usr/include/linux/version.h:22: #error " o Now copy /boot/vmlinuz.version.h to"
/usr/include/linux/version.h:23: #error " /lib/modules/`uname -r`/build/include/linux/version.h"
/usr/include/linux/version.h:24: #error ""
/usr/include/linux/version.h:25: #error " o When compiling, make sure to use the following"
/usr/include/linux/version.h:26: #error " compiler option to use the correct include files:"
/usr/include/linux/version.h:27: #error ""
/usr/include/linux/version.h:28: #error " -I/lib/modules/`uname -r`/build/include"
/usr/include/linux/version.h:29: #error ""
/usr/include/linux/version.h:30: #error " instead of"
/usr/include/linux/version.h:31: #error ""
/usr/include/linux/version.h:32: #error " -I/usr/include/linux"
/usr/include/linux/version.h:33: #error ""
/usr/include/linux/version.h:34: #error " Please adjust the Makefile accordingly."
/usr/include/linux/version.h:35: #error "======================================================="[/code]
aangezien in een beginner ben op het gebied van linux, weet ik niet waar ik dit moet veranderen
| Melk | Boter | Bloem | Ei |
Zoals de make output zegt zijn er twee sets kernel include headers. Namelijk de kernel include headers die gebruikt zijn bij het compileren van de glibc (systeem library) en de kernel include headers van de kernel zelf.Op maandag 24 juni 2002 12:42 schreef Den the Man het volgende:
Als mijn suse machine is opgestart staat er: Welcome to SuSE linux 7.2 (i386) Kernel 2.4.4-4GB
edit:
Dit staat er in de text dat voorbij komt vliegen als ik make heb ingtikt:
[...]
aangezien in een beginner ben op het gebied van linux, weet ik niet waar ik dit moet veranderen
Deze hoeven niet van de zelfde versie te zijn aangezien de kernel versie kan afwijken van de kernel waarvoor de glibc is gecompileerd.
Voor normale programma's die glibc gebruiken om met de kernel te communiceren is de set kernel headers die bij glibc horen voldoende.
Echter wanneer je modules gaat maken die in de kernel worden geladen (wat hiet waarschijnlijk de bedoeling is) moet je bij het compileren de kernel include headers van de kernel zelf gebruiken en niet van glibc.
Hiertoe moet je de source installeren die gebruikt is om je huidige kernel te compileren (bij Suse vandaan halen) en in /lib/modules/2.4.4 (of /lib/modules/2.4.4-4GB, zie output "uname -r") een link met de naam 'build' naar de kernel source directory plaatsen.
bv:
ln -s /usr/src/linux /lib/modules/2.4.4/build
Let op, alleen de kernel source in /usr/src/linux plaatsen als daar al niks anders staat. Sommige distro's zetten namelijk de glibc headers in /usr/src/linux die je dan zou overschrijven.
Zet de kernel source anders in bv /usr/src/kernel-2.4.4 en laat de build link hierna verwijzen.
Tevens moet je de Makefile van rshaper aanpassen en "-I/usr/include/linux" vervangen door -I/lib/modules/2.4.4/build/include"
Tevens moet je het bestand /boot/vmlinuz.version.h copieeren
naar /lib/modules/2.4.4/build/include/version.h.
Als je geen /boot/vmlinuz.version.h hebt maar wel een /boot/config-2.4.4 (of iets wat er op lijkt), copier die dan naar /lib/modules/2.4.4/build/.config en doe 'make oldconfig' in de directory /lib/modules/2.4.4/build.
Dat zou als het goed is de version.h file moeten aanmaken.
Als dat niet lukt kan je beter zelf een nieuwe kernel compileren en installeren zodat je zeker weet dat de rshaper module bij je kernel past.
Dat laatste is overigens geen slecht idee want dan kan je gelijk een nieuwere kernel versie gebruiken (2.4.18 is redelijk stabiel) omdat jouw kernel versie 2.4.4 een aantal bekende problemen heeft (bv local root exploite).
Succes:)
That which doesn't kill us, makes us stranger - Trevor (AEon FLux)
When a finger points at the moon, the imbecile looks at the finger (Chinese Proverb)
Pagina: 1