Wpis z mikrobloga

#programowanie #linux #raspberrypi

Próbuję zbudować moduł kernelowy do raspberry i mam poniższy problem. Pomoże ktoś?

make -C /lib/modules/6.6.31+rpt-rpi-2712/build M= modules
make[1]: Entering directory '/usr/src/linux-headers-6.6.31+rpt-rpi-2712'
SYNC include/config/auto.conf.cmd
GEN Makefile
/usr/src/linux-headers-6.6.31+rpt-common-rpi/scripts/Makefile.build:41: /usr/src/linux-headers-6.6.31+rpt-common-rpi/scripts/basic/Makefile: No such file or directory
make[4]: *** No rule to make target '/usr/src/linux-headers-6.6.31+rpt-common-rpi/scripts/basic/Makefile'. Stop.
make[3]: *** [/usr/src/linux-headers-6.6.31+rpt-common-rpi/Makefile:644: scripts_basic] Error 2
/usr/src/linux-headers-6.6.31+rpt-common-rpi/Makefile:786: include/config/auto.conf.cmd: No such file or directory
make[2]: *** [/usr/src/linux-headers-6.6.31+rpt-common-rpi/Makefile:809: include/config/auto.conf.cmd] Error 2
make[1]: *** [/usr/src/linux-headers-6.6.31+rpt-common-rpi/Makefile:246: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-6.6.31+rpt-rpi-2712'
make: *** [Makefile:10: all] Error 2
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 0
Zainstalowałem
sudo apt install linux-headers-generic
sudo apt install linux-headers-6.6.31+rpt-rpi-2712
sudo apt install linux-source

coś jeszcze muszę doinstalować? plik który nie może zostać znaleziony powinien byc w headerach
  • Odpowiedz
Zainstalowałem

sudo apt install linux-headers-generic

sudo apt install linux-headers-6.6.31+rpt-rpi-2712

sudo apt install linux-source


coś jeszcze muszę doinstalować? plik który nie może zostać znaleziony powinien byc w headerach
  • Odpowiedz
@Babooco: a czemu tego nie budujesz przez

dpkg-buildpackage -uc -us -b
?

Druga sprawa to dawno nie budowałem kernela ale nie musiałem przypadkiem wygenerować configa jakimś cmake czy innym autogenem?
  • Odpowiedz
  • 0
@Kryspin013: Nie budowałem kernela. Korzystam z oficjalnego od RPi.
Kiedyś już się bawiłem modułami kernelowymi na rpi4 i po doinstalowaniu headerów moduły się budowały bez problemu.
  • Odpowiedz
@Babooco: na pierwszy rzut oka masz co najmniej 2 problemy:
1. Twoje $PWD w Makefile'u nie rozwinęło się poprawnie, zwróć uwagę że w logu masz M= (pusto), a powinien być bieżący katalog. Być może pomoże dodanie w Makefile'u czegoś w stylu PWD :=$(shell pwd)
2. Wygląda jakby katalog /lib/modules/6.6.31+rpt-rpi-2712/build nie zawierał źródeł/headerów Linuxa? Z jakiegoś powodu make przekierowuje do /usr/src/linux-headers-6.6.31+rpt-common-rpi (może to po prostu symlink) - sprawdź może ręcznie co
  • Odpowiedz