Welches Modul/Treiber für welche Hardware, Kernel compilieren...
-
guennid
Beitrag
von guennid » 29.08.2017 11:21:56
Beim Versuch tp-smapi-dkms zu installieren werde ich auf das make.log unter /var/lib/dkms/..../build verwiesen und finde dort:
Code: Alles auswählen
make: Verzeichnis „/usr/src/linux-4.9.40“ wird betreten
WARNING: Symbol version dump ./Module.symvers
is missing; modules will have no dependencies and modversions.
LD /var/lib/dkms/tp_smapi/0.42/build/built-in.o
CC [M] /var/lib/dkms/tp_smapi/0.42/build/thinkpad_ec.o
/var/lib/dkms/tp_smapi/0.42/build/thinkpad_ec.c: In function ‘check_dmi_for_ec’:
/var/lib/dkms/tp_smapi/0.42/build/thinkpad_ec.c:469:1: warning: the frame size of 1660 bytes is larger than 1024 bytes [-Wframe-larger-than=]
}
^
CC [M] /var/lib/dkms/tp_smapi/0.42/build/tp_smapi.o
CC [M] /var/lib/dkms/tp_smapi/0.42/build/hdaps.o
Building modules, stage 2.
MODPOST 3 modules
/bin/bash: scripts/mod/modpost: Datei oder Verzeichnis nicht gefunden
scripts/Makefile.modpost:91: die Regel für Ziel „__modpost“ scheiterte
make[1]: *** [__modpost] Fehler 127
Die Zeile:
Code: Alles auswählen
/bin/bash: scripts/mod/modpost: Datei oder Verzeichnis nicht gefunden
wird wohl die entscheidende sein, aber ich verstehe sie nicht.
Grüße Günther
Zuletzt geändert von guennid am 30.08.2017 10:01:13, insgesamt 1-mal geändert.
-
towo
- Beiträge: 4541
- Registriert: 27.02.2007 19:49:44
- Lizenz eigener Beiträge: GNU Free Documentation License
Beitrag
von towo » 29.08.2017 11:27:31
Eigenbau-Kern?
-
guennid
Beitrag
von guennid » 29.08.2017 11:28:18
Ja.
-
towo
- Beiträge: 4541
- Registriert: 27.02.2007 19:49:44
- Lizenz eigener Beiträge: GNU Free Documentation License
Beitrag
von towo » 29.08.2017 11:33:48
Nuja, vermutlich ohne Headers gebaut, oder ohne Module Support, is ja Dein System.
-
guennid
Beitrag
von guennid » 29.08.2017 11:58:23
Auf so'ne hilfreiche Antwort von dir hätt' ich wetten mögen
-
towo
- Beiträge: 4541
- Registriert: 27.02.2007 19:49:44
- Lizenz eigener Beiträge: GNU Free Documentation License
Beitrag
von towo » 29.08.2017 12:02:22
Naja, wenn man mit Eigenbau Kerneln rummacht, sollte man schon wissen, was man tut.
Und man kann auch schöbe Debian Pakete erstellen lassen, da sind dann sogar die Headers dabei.
Und die Ausgabe des make-Prozesses deutet halt darauf hin, daß die Source nicht vür den Modul-Bau vorbereitet ist.
Normalerweise hilft dann ein make prepare und make modules_prepare. Sowas sollte man als wissender Kernel-Bauer aber kennen.
-
guennid
Beitrag
von guennid » 29.08.2017 12:37:36
Sowas sollte man als wissender Kernel-Bauer aber kennen.
Ich bin aber kein "wissender" Kernelbauer. Und gegen "Wissende" bin ich ziemlich allergisch! Ich möcht lieber als "Lernender/Neugieriger" gesehen werden.
Zur Sache: make prepare wurde vorher ausgeführt. oldconfig habe ich mir geschenkt, weil die .config die des laufenden Kernel-Images IST. make modules prepare werde ich ausführen. Sicher, dass ein headers-Paket benötigt wird? Wie man's (mit)baut, habe ich in der Zwischenzeit nachgelesen.
Grüße, Günther
-
towo
- Beiträge: 4541
- Registriert: 27.02.2007 19:49:44
- Lizenz eigener Beiträge: GNU Free Documentation License
Beitrag
von towo » 29.08.2017 12:40:43
Will man out of tree Kernel Module bauen, benötigt man entweder die konfigurierten Sourcen, oder eben die Haeders.
Weil die Headers aber wärend der Kernel-Bauens erzeugt werden, passen selbige auch immer zum Kernel und sind auch für Selbigen konfiguriert.
Ergo, man macht sich das Leben leichter, wenn man es gleich richtig macht.
-
guennid
Beitrag
von guennid » 30.08.2017 10:00:50
headers bauen erwies sich in meinem Fall als nicht nötig. "make prepare", "make modules prepare" genügten, um die Module thinkpad_ec und tp_smapi händisch mit dkms zu bauen und zu installieren. Hätte man letzteres abbrechen können, nachdem scripts/mod/modpost angelegt wurde? Was danach über den Bildschirm huschte, sah mir nach (zeitaufwendigem) erneutem Bauen aller Kernelmodule aus.
Dank an towo für die richtungsweisenden Tipps!
Grüße, Günther