Hallo,
Was kann ich tun, dass beim DU-initiierten Build die neu installierte Version 3.1.4 von tuxedo-keyboard anstatt die alte 3.1.0 (nicht kompatibel mit kernel 6.2) verwendet wird?
Hintergrund:
Beim aktuellen DU laufe ich ein einen Fehler:
Error! Bad return status for module build on kernel: 6.2.7-1-siduction-amd64 (x86_64)
Consult /var/lib/dkms/tuxedo-keyboard/3.1.0/build/make.log for more information.
Google hilft und bringt (
https://www.reddit.com/r/tuxedocomputers/comments/11sylvt/tuxedokeyboard_not_compiling_under_kernel_62/)
Version 3.1.3 [and prior] is not compatible with kernel versions above 6.1. Tuxedo-keyboard-3.1.4 should build without problems.
Die neue Version finde ich hier:
https://github.com/tuxedocomputers/tuxedo-keyboard
Und kann das Modul auch ohne Fehler bauen und er legt die neue Version auch im SRC-Ordner ab:
[...]
Creating symlink /var/lib/dkms/tuxedo-keyboard/3.1.4/source -> /usr/src/tuxedo-keyboard
-3.1.4
[...]
Und sie liegt da auch brav neben der alten Version...
root@tuxedo:/var/lib/dkms/tuxedo-keyboard# ls
3.1.0 3.1.4 kernel-6.1.14-1-siduction-amd64-x86_64 kernel-6.2.7-1-siduction-amd64-x86_64
Das DU scheitert jedoch immer noch, weil er dort augenscheinlich das alte 3.1.0-tuxedo-keyboard verwendet:
Error! Bad return status for module build on kernel: 6.2.7-1-siduction-amd64 (x86_64)
Consult /var/lib/dkms/tuxedo-keyboard/3.1.0/build/make.log for more information.
cat /var/lib/dkms/tuxedo-keyboard/3.1.0/build
bringt:
/make.log
DKMS make.log for tuxedo-keyboard-3.1.0 for kernel 6.2.7-1-siduction-amd64 (x86_64)
So 19. Mär 14:33:21 CET 2023
make -C /lib/modules/6.2.7-1-siduction-amd64/build M=/var/lib/dkms/tuxedo-keyboard/3.1.
0/build modules
make[1]: Warnung: Kein Jobserver verfügbar: -j1 wird gesetzt. Fügen Sie der Ursprungsre
gel
„+“ hinzu.
make[1]: Verzeichnis „/usr/src/linux-headers-6.2.7-1-siduction-amd64“ wird betreten
CC [M] /var/lib/dkms/tuxedo-keyboard/3.1.0/build/./src/tuxedo_keyboard.o
CC [M] /var/lib/dkms/tuxedo-keyboard/3.1.0/build/./src/clevo_wmi.o
CC [M] /var/lib/dkms/tuxedo-keyboard/3.1.0/build/./src/clevo_acpi.o
/var/lib/dkms/tuxedo-keyboard/3.1.0/build/./src/clevo_acpi.c:183:27: error: initializat
ion of ‘void (*)(struct acpi_device *)’ from incompatible pointer type ‘int (*)(struct
acpi_device *)’ [-Werror=incompatible-pointer-types]
183 | .remove = clevo_acpi_remove,
| ^~~~~~~~~~~~~~~~~
/var/lib/dkms/tuxedo-keyboard/3.1.0/build/./src/clevo_acpi.c:183:27: note: (near initia
lization for ‘clevo_acpi_driver.ops.remove’)
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:257: /var/lib/dkms/tuxedo-keyboard/3.1.0/build/./s
rc/clevo_acpi.o] Fehler 1
make[1]: *** [Makefile:2034: /var/lib/dkms/tuxedo-keyboard/3.1.0/build] Fehler 2
make[1]: Verzeichnis „/usr/src/linux-headers-6.2.7-1-siduction-amd64“ wird verlassen
make: *** [Makefile:29: all] Fehler 2
Was kann ich tun, dass er beim DU-initiierten build die 3.1.4 anstatt der 3.1.0 verwendet?
Danke für jede Hilfe/Tip!