Skip to content

Latest commit

 

History

History
34 lines (18 loc) · 1.01 KB

ch2_02-tips.md

File metadata and controls

34 lines (18 loc) · 1.01 KB

[TIPS] error: implicit declaration of function 'class_create'


编译驱动时提示如下错误:

内核版本:linux-2..6.25.8

查阅资料资料得知,这个可能是由于内核版本升级,新版的API对早期的API不一致导致的,但是具体从哪个版本开始的,说法不一,有说是从linux-2.6.29.x 开始的,有的说是从linux-2.6.30.x开始的。发现都不是我所使用的版本。

而相关的

class_createclass_device_createclass_device_unregisterclass_destroy

函数原型在

/include/linux/device.h 文件中,

在该目录中,我们找到如下的代码:

可见问题并不是出在内核API上面,或者说在这个版本linux-2.6.25.8 中上述的写法仍然可以使用,那么问题出在哪儿呢,仔细检查发现,应该还要包含该头文件路径。

#include <linux/device.h>

然后,编译顺利通过 。