最近在进行linux内核开发的学习,但是不知道怎么使用内核函数。在朋友的提醒下,可以通过man命令查询函数的使用,但是系统并没有自带内核函数的man手册,所以就尝试手动添加。
踩过的坑
1.必须下载与自身系统内核版本相同的内核源码
2.建议直接在虚拟机内下载内核源码。我一开始是在宿主机上下载的内核源码,然后拖进虚拟机内,但是文件在拖进迅疾的过程中会出现数据丢失的情况(可能是我电脑的原因)。最后在解压内核源码的时候就没有成功。
3.在生成mandocs之后,直接在当前目录运行make installmandocs。注意这一步不要切换目录,另外不是make install mandocs(install和mandocs之间没有空格)。
创建内核函数man手册
1、下载对应的内核源码
1.1 查看内核版本
uname -r
1.2 下载内核源码
下载地址
https://mirrors.edge.kernel.org/pub/linux/kernel/v3.x/
下载之后进行解压。
2、安装man和依赖
2.1 安装man
yum install man
2.2 安装xmlto
yum install xmlto
3、创建内核函数的man手册
进入下载好的内核源码目录
make mandocs
这一步很花费时间。
之后
make installmandocs
最后就可以测试一下创建的man手册,查看printk函数。
man printk