Makefile에 대한 사항들을 정리하기 위한 페이지이다.
TARGET_NAME = ckun
KERNEL_DIR = /lib/modules/$(shell uname -r)/build
PWD = $(shell pwd)
obj-m = $(TARGET_NAME).o
$(TARGET_NAME)-objs = main.o \
init.o
all:
make -C $(KERNEL_DIR) M=$(PWD) modules
install:
make -C $(KERNEL_DIR) M=$(PWD) modules_install
clean:
make -C $(KERNEL_DIR) M=$(PWD) clean
INSTALL_MOD_PATH
를 사용하여 설치 경로를 변경할 수 있다.
make -C $(KERNEL_DIR) M=$(PWD) INSTALL_MOD_PATH=/usr/local/ modules_install
make -C $(KERNEL_DIR) M=$(PWD) modules modules_install
modprobe {module_name}
을 사용할 수 있다. 참고로 modprobe -r
은 모듈 자체를 삭제하지는 않는다.
shell> modprobe ckun.ko
shell> modprobe -r ckun.ko
rm
명령어를 사용하기도 하는데 make -C .... clean
하면 소스 파일을 제외하고 전부 삭제해 준다
make -C $(KERNEL_DIR) M=$(PWD) clean
ccflags-y := -Wno-unused-variable
-w
옵션을 준다.