`fehlt-syscalls' Fehler bei der kernel-Kompilierung
Diese sind die Schritte, die ich mache, um zu kompilieren die linux-Quellen auf meinem Rechner :
1. Kopieren Sie die config-Datei aus /boot nach /usr/src/kernels/2.6.29.4-167.fc11.i586/directory
2. make oldconfig
3. machen
Schritt 3 fehlschlägt, mit der folgenden Fehlermeldung :
make[1]: *** No rule to make target `fehlt-syscalls'. Stop.
Kompilieren auf einem x86-Rechner.
Irgendwelche Vorschläge ?
Bitte fühlen Sie sich frei, um zu schließen diese Frage, wenn es hier nicht hingehört.
InformationsquelleAutor vivekian2 | 2009-09-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als archaisch, als es klingt scheint es, dass derzeit um die kernel-source auf einem system müssen Sie manuell wählen Sie die gewünschte Quelle. Man vermutet, dass die Menschen nicht aufbauen, Kernel, wie oft Sie verwendet, um und natürlich möchten Sie vielleicht zu entwickeln, die einen kernel, die nicht mit der version, die Sie ausführen..
So zum Beispiel, die ich installieren wollte, VBox auf meinem CentOS-6.2-box, und während die meisten kernel-Module kompiliert werden können, ohne komplette Quellen dieses update fehlgeschlagen ist.
Also ich fand diese wiki-Seite:
http://wiki.centos.org/HowTos/I_need_the_Kernel_Source
Spielt es keine Liste 6.2 und die Namenskonventionen geändert haben, auf die endgültige Verzeichnis-Namen, so um die 6.2 kernel-Quelle, die Sie gehen, um http://vault.centos.org/6.2/updates/Source/ und wählen Sie die gewünschte version. Wenn Sie möchten, dass Quelle für eine andere version gehen http://vault.centos.org/ und navigieren Sie von dort aus.
Die docs empfehlen vor einer rpm-build auf die kernel-Quellen.
InformationsquelleAutor kkron
Machen eine neue config Datei. Vielleicht ist die alte nicht funktioniert?
InformationsquelleAutor Sean A.O. Harney
Ich nicht in der Lage zu beantworten, warum dieser Fehler passiert :
Schritt 3 schlägt fehl mit dem folgenden Fehler : make[1]: *** No rule to make target `fehlt-syscalls'. Stop.
Aber ich war in der Lage zu kompilieren, die Vanille-version in Ordnung, ohne den oben genannten Fehler.
Ich fragte die gleiche Frage auf serverfault, die eine detaillierte Erläuterung der Schritte : https://serverfault.com/questions/61354/missing-syscalls-error-during-kernel-compilation
InformationsquelleAutor vivekian2
seit kernel 3.x.x diese Meldung erscheint, wenn Sie versuchen zu bauen externer Module haben nur eine Makefile vorbereitet.
Statt, nach dieses Handbuch,
Aufspaltung in Kbuild (wo alle Quelldateien aufgelistet sind, Beispiel):
obj-m := module_source.c
und einfache Makefile (nur Standard machen-Richtlinie, Beispiel):
default:
$(MAKE) -C $(KDIR) M=$$PWD
wird das problem lösen.
nur für den Fall, externes Modul bauen, die Richtlinie würde die folgenden sein:
make -C <kernel source path> -M=<module source folder>
Beispiel:
make -C . -M=extra/
InformationsquelleAutor Oleg Kokorin