Компиляция LKM Raspberry Pi - Отказано в доступе

Компиляция LKM Raspberry Pi - Отказано в доступе

Я следую первому примеру LKM Hello World и теперь мне нужно его скомпилировать.

Согласно книге, Makefile должен быть таким:

obj-m+=hello_world.o

all:
        make -C /lib/modules/$(shell uname -r)/build/ M=$(pwd) modules
clean:
        make -C /lib/modules/$(shell uname -r)/build/ M=$(pwd) clean

И затем вам нужно запустить make(а там написано, что вам не нужно этого делать sudo make, иначе вы перекомпилируете все заголовочные файлы ядра Linux).

При запуске этого выводится:

make -C /lib/modules/5.10.63+/build/ M= modules
make[1]: Entering directory '/usr/src/rpi-5.10.y'
/bin/sh: 1: cannot create include/generated/uapi/linux/.version.h.tmp: Permission denied
  UPD     include/generated/uapi/linux/version.h
mv: cannot stat 'include/generated/uapi/linux/.version.h.tmp': No such file or directory
make[1]: *** [Makefile:1277: include/generated/uapi/linux/version.h] Error 1
make[1]: Leaving directory '/usr/src/rpi-5.10.y'
make: *** [Makefile:4: all] Error 2

И если я запускаю sudo makeили изменяю команды Makefile, sudo make -C ...он никогда не заканчивается (>2 часов и все еще ожидание).

Я не смог запустить sudo apt install linux-headers-'uname -r'(не обращайте внимания на ', они есть `, но я не могу поместить их здесь), потому что ядро ​​последнее (5.10.63+), но я выполнил все шаги из книги, в которой рассказывается, как вручную скомпилировать все заголовочные файлы ядра Linux, так что они у меня должны быть.

Есть идеи? Если вам нужна дополнительная информация, просто скажите, какую команду мне нужно выполнить, и я прикреплю вывод.

Спасибо!

Связанный контент