0
Я не получаю вывод для этого кода. Какие изменения нужно внести в мой Makefile? код:программирование ядра - ошибка Makefile
#define MODULE
#define LINUX
#define __KERNEL__
#include<linux/module.h>
#include<linux/kernel.h>
#include<linux/init.h>``
MODULE_LISENCE("GPL");
MODULE_AUTHOR("Peter Jay Salzman");
static u8 (mybyte='A');
static int (myint='i');
MODULE_PARM(mybyte, "b");
MODULE_PARM(myint, "i");
MODULE_PARM_DESC(mybyte, "this cannot do anything\n");
static int __init hello5_init(void)
{
printk("my byte %i\n",mybyte);
printk("my integer %i \n",myint);
}
static void __exit hello5_exit()
{
printk("bye world\n");
}
module_init(hell05_init);
module_exit(helo5_exit);
Makefile: OBJ-м + = hello5.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
exit:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
.PHONY: all, exit
Ошибка:
/home/kumarmagi/Desktop/amit/hello5/hello5.c:23:24: error: ‘mybyte’ undeclared (first use in this function)
/home/kumarmagi/Desktop/amit/hello5/hello5.c:23:24: note: each undeclared identifier is reported only once for each function it appears in
/home/kumarmagi/Desktop/amit/hello5/hello5.c:24:28: error: ‘myint’ undeclared (first use in this function)
/home/kumarmagi/Desktop/amit/hello5/hello5.c:25:1: warning: no return statement in function returning non-void [-Wreturn-type]
Нет, это также не работает. Я думаю, проблема связана с моей версией компилятора. – user3064376
У вас проблема с вашим компилятором? !!!. Проблема в вашей программе, по крайней мере, вставьте программу здесь правильно, у вас есть функция «hell05_init» в вашей программе или у вас есть функция «helo5_exit» в программе, есть ли способ определить такую переменную, статический u8 (mybyte = 'A') '?. – knare