编译内核模块

时间:2015-12-13 18:12:23

标签: driver kernel-module implicit-declaration

我不熟悉在内核空间工作,所以我希望有人可以帮我解决我遇到的问题。

我已经看到很多与用户空间c / c ++程序的隐式函数声明相关的问题,但我认为我所遇到的问题可能在内核空间中有所不同。

我正在处理的代码是测试用户应用程序从驱动程序发出信号,我已经工作了,但问题是我无法使用linux / signal.h中声明的函数send_sig_info,直到我声明它为止我自己的驱动程序源头。我想如果我已经包含了正确的标题来访问在那里声明的函数调用,它应该可以工作。

所以没有在我自己的标题中声明send_sig_info:

error: implicit declaration of function ‘send_sig_info’

然后添加到我的头文件中:

static int send_sig_info(int sig, struct siginfo *info, struct task_struct *p);

允许我的代码编译得很好。

有谁知道为什么会这样?

感谢。

0 个答案:

没有答案