Ошибка в загружаемом модуле ядра как make: ничего не сделать для всех?

Функции, которые вы пишете для обеспечения интерфейсов procfs, являются просто кодом, который является частью вашего источника LKM.

http://linux.die.net/lkmpg/x769.html имеет простой пример использования procfs, приведенный здесь:

Я скопировал код из приведенной выше ссылки. Вы найдете учебное пособие по сборке модулей ядра по адресу http://www.cyberciti.biz/tips/compiling-linux-kernel-module.html. Резюме этого:

1) Убедитесь, что у вас установлен исходный код ядра в / usr / src.

2) Создайте make-файл, который выглядит так:

obj-m = procfs2.o
KVERSION = $(shell uname -r)
all:
        make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules
clean:
        make -C /lib/modules/$(KVERSION)/build M=$(PWD) clean

3) собрать модуль с помощью команды make 4) загрузить модуль в память с помощью команды insmod procfs2.ko (сделать это как пользователь root)

I copied the code and created the MAKEFILE and later if I give the make command from the console then it is showing as: make: nothing to be done for all. could someone please tell me what could be the error??

1 ответ

Решение

Вот пример Makefile для модуля ядра.

важно отметить, что указанные ниже точки должны быть заменены на TAB, а замена их пробелами приведет к сбоям в работе 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
Другие вопросы по тегам