Linux驱动之用man查看内核函数——学习笔记(2)

616 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

写Linux驱动总是使用的大多是一些内核函数,在用man无法查找也是一件麻烦事。 实现让man支持内核函数查询,这里我也是通过网上查找的资料,然后把自己的操作步骤记录下。


一、下载Linux内核源码

www.kernel.org下载Linux内核源码。 因为我开发板的内核版本是3.14.38,所以下了个相近的版本3.16.82。

二、安装及编译

1、安装manpages-dev

  • 执行命令sudo apt-get install manpages-dev

这是安装man这个函数库手册,我Ubuntu16.04已经自带了,不用安装。

2、安装mandocs依赖包 xmlto软件包

  • 执行命令sudo apt-get install xmlto
  • 安装xmlto软件包需要蛮长时间的。

如果没有安装直接在kernel目录make mandocs的话会产生以下提示:

hrx@@@:~/linux-3.16.82$ make mandocs
  HOSTCC  scripts/docproc
  DOCPROC Documentation/DocBook/z8530book.xml
*** You need to install xmlto ***
/home/hrx/linux-3.16.82/Documentation/DocBook/Makefile:165: recipe for target 'Documentation/DocBook/z8530book.9' failed
make[1]: *** [Documentation/DocBook/z8530book.9] Error 1
Makefile:1237: recipe for target 'mandocs' failed
make: *** [mandocs] Error 2

3、编译生成mandocs

  • 进入到kernel目录。
  • 执行命令make mandocs
  • 编译需要挺长一段时间。
  • 生成的文件放在linux-3.16.82/Documentation/DocBook/man/ 目录下,文件格式都是 * .9.gz

4、安装mandocs

  • 执行命令sudo make installmandocs
hrx@@@:~/M6/linux-3.16.82$ sudo make installmandocs
[sudo] hrx 的密码: 
  GEN     Documentation/DocBook//v4l2.xml
mkdir -p /usr/local/man/man9/
install Documentation/DocBook/man/*.9.gz /usr/local/man/man9/

三、测试

  • 执行命令man printk 在这里插入图片描述

参考1:blog.chinaunix.net/uid-3036045…