kann mir mal jemand genau erklären wie die verlinkung von der Kdir in einem Makefile ordnungsgemäß auszusehen hat.
Folgendes Makefile
Code: Alles auswählen
obj-m := hello_world.o
KDIR := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
all:
make -C $(KDIR) M=$(PWD) modules
clean:
make -C $(KDIR) M=$(PWD) clean
der Compiler greift auf das include Verzeichnis zu um die header files einzubinden. richtig?
Wie könnte ich die Headers welche unter /usr/includes sind in das Modul mit einbinden (durch eine erweiterung -I/usr/includes vom Make befehl oder symlink im build verzeichnis)?
in den linux-headers ist das Verzeichnis linux welches z.b stdio.h beinhaltet.
dieses stdio.h bindet wiederum features.h ein welches ebenso im linux verzeichnis liegt. Der GCC durchsucht jedoch das build verzeichnis erneut und sucht die features.h nicht sofort unter linux -> Error!!! Wie könnte ich all diese Probleme umgehen??
Hilfe wäre echt toll!!
mfg