No arquivo de criação, altere apenas SUBDIRS=$(PWD)
para M=$(shell pwd)
...
Funciona como charme
Estou usando o Ubuntu 12.04. Eu escrevi um módulo simples de hello world kernel ( hello.c
). Eu escrevi o seguinte makefile para ele:
obj-m+=hello.o
KDIR:= /usr/src/linux-headers-3.2.0-24-generic-pae
all:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
clean:
rm -rf *.o *.ko *.mod.* *.symvers *.order
Mas esse erro apareceu quando eu fiz do kernel:
make[1]: Entering directory '/usr/src/linux-headers-3.2.0-24-generic-pae'
make[2]: *** No rule to make target 'arch/x86/tools/relocs.c', needed
by 'arch/x86/tools/relocs'. Stop.
hello.c
e makefile
estão em /Documents/module_prog
. Eu corri make
desse diretório.
O que está causando esse erro e como posso corrigi-lo?
No arquivo de criação, altere apenas SUBDIRS=$(PWD)
para M=$(shell pwd)
...
Funciona como charme