안녕하세요, 저는 커널 개발이 처음이고 이 내용을 따르고 있습니다.지도 시간 .
모듈을 만들려고 할 때:
#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk(KERN_ALERT "Hello, world\n");
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel world\n");
}
module_init(hello_init);
module_exit(hello_exit);
책에 적힌대로 "make"와 makefile을 사용하세요.
obj-m := hello.o
오류가 발생했습니다.
확인: *** 대상이 없습니다. 멈추다.
도와주시고 미리 감사드립니다.
답변1
샘플Makefile
:
obj-m += hello.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
linux-headers
(커널 헤더) 및 (개발 도구)를 설치해야 합니다 .build-essential