modinfo: ОШИБКА: не удалось получить modinfo из 'hello_1': ошибка формата Exe c - PullRequest
0 голосов
/ 15 марта 2020

пытается вставить простой модуль в ядро, которое печатает привет мир. но при вставке модуля с помощью insmod выдается следующая ошибка:

insmod: ERROR: could not insert module ./hello-1.ko: Invalid module format

в руководстве по программированию linux модуля ядра сказано это из-за разницы вермаги c. Итак, я попытался использовать modinfo, чтобы увидеть вермаги c модуля hello-1.ko, и получил указанную ошибку.

Я много искал, но не понимаю, как продолжить.

я использую linux mint tricia 19.3

ядро: 5.0.0-32-generi c

модуль -

#include <linux/module.h>       
#include <linux/kernel.h>       
int init_module(void)
{        
    printk(KERN_INFO "Hello world 1.\n");        
    return 0;
}
void cleanup_module(void)
{
        printk(KERN_INFO "Goodbye world 1.\n");
}

его makefile

obj−m += hello−1.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
...