Я попытался скомпилировать мой первый загружаемый модуль ядра и не смог :(
Вот ошибка:
r@ubuntu:/$ sudo make -C /lib/modules/`uname -r`/build/ M=`pwd`
[sudo] password for r:
make: Entering directory `/usr/src/linux-headers-2.6.38-8-generic'
scripts/Makefile.build:76: kbuild: Makefile.build is included improperly
make[1]: *** No rule to make target `kernel/bounds.c', needed by `kernel/bounds.s'. Stop.
make: *** [_module_] Error 2
make: Leaving directory `/usr/src/linux-headers-2.6.38-8-generic'
Мне нужна помощь, зная, что не так.
Вот make-файл, который я использую:
obj-m += sample_module_for_techblog.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
clean-files := Module.symvers
я обнаружил следующий фрагмент кода (который печатает часть ошибки, которую я получаю) отсюда
ifndef obj
$(warning kbuild: Makefile.build is included improperly)
endif
Я надеюсь, что это помогает решить проблему.