0

我正在用代码编写一个基本的设备驱动程序

#define MODULE
#include<linux/module.h>

int init_module(void){
    printk("<1>Hello World!!!\n");
    return 0;
}

void cleanup_module(void){
    printk("<1>Goodbye cruel world");

}

在 Ubuntu 中,它给出了一个错误:

linux/module.h no such file or directory.
4

2 回答 2

0

我也是设备驱动程序的初学者,据我所知,我们需要linux-source-tree编译linux-kernel驱动程序模块。

首先检查安装generic-header/usr/src文件夹中,然后通过此命令安装源树

sudo apt-get update
sudo apt-get install linux-tree

你的问题就会得到解决。

更多信息 :

如果您安装了多个1标头,我建议您拥有最新的标头。您可以通过此命令卸载以前的标头

sudo apt-get autoremove

此命令删除由其他软件包安装且不再需要的软件包。

我希望这能帮到您。

于 2013-08-18T20:08:57.250 回答
0

这是因为缺少针对 Linux 内核编译此代码所需的 Linux 内核头文件。
使用此命令安装它:

 sudo apt-get install linux-headers-$(uname -r)

(阅读这个问题)。

于 2013-08-18T17:41:42.087 回答