linux / module.h: Нет такого файла или каталога

Я новичок и пробую некоторые основы программирования ядра в Linux. Сегодня утром я открыл файл module.h в VIM и закрыл его без сохранения изменений. После этого я не могу скомпилировать ни один из моих кодов. Я получаю следующее сообщение об ошибке

[root@localhost helloworld]# cc helloworld.c
helloworld.c:1:25: error: linux/module.h: No such file or directory
[root@localhost helloworld]# 

Вот пример кода, который успешно выполнялся до последнего дня.

#include<linux/module.h>
#include<linux/kernel.h>

int init_module(void)
{
        printk("HELLO WORLD");
        return 0;
}

void cleanup_module(void)
{
        printk("GOODBYE");
}

Я искал файл module.h, как показано ниже, и он действительно существует

[root@localhost usr]# find . -name module.h
./src/kernels/2.6.18-194.el5-i686/include/asm-x86_64/module.h
./src/kernels/2.6.18-194.el5-i686/include/asm-i386/module.h
./src/kernels/2.6.18-194.el5-i686/include/linux/module.h
./include/sepol/policydb/module.h
./include/sepol/module.h
./include/kde/kunittest/module.h
[root@localhost usr]# 

Пожалуйста, помогите мне. Я использую CentOS в виртуальной машине.

17
задан ajishalfred 9 November 2011 в 09:10
поделиться

1 ответ

Вам может понадобиться Makefile для компиляции вашего модуля. Я попробовал на своем персональном компьютере (Ubuntu 10.04.4), я сталкиваюсь с той же проблемой, когда использую gcc -c hello.c, но с Makefile все будет в порядке. Версия ядра 2.6.32-54-универсальная

0
ответ дан 30 November 2019 в 12:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: