文档章节

创建Linux内核函数的Man手册

wuqingyi
 wuqingyi
发布于 2017/07/07 22:20
字数 459
阅读 47
收藏 0

【前言】
    编写驱动程序的时候,一般情况下使用的都不是 C标准库的函数,而是 Linux内核中的函数。所以即使用 man命令 也找不到很多函数的帮助信息,这很不利于 Linux内核的学习。
    好在 Linux内核虽然没有直接提供手册,却提供了创建手册的工具。我们 可以手动生成 Linux内核的 Man手册

【创建步骤】
    1、下载一个稳定版本的内核,例如:linux-4.4.8。
        一般情况下用 Linux系统自带的源码不行,建议到官方网站下载最新版本:http://kernel.org/

    2、在顶层目录下执行 make mandocs 创建 Man手册。 这一步很费时间

    3、再执行 sudo make installmandocs 进行安装。

    4、现在可以使用 man命令 查看内核函数了。

【注意事项】
    1、如果 make mandocs 命令执行失败,可能是没有安装 Sphinx和xmlto 导致的,可以使用命令sudo easy_install Sphinx和 sudo apt-get install xmlto 进行安装。

    2、 可以将创建好的 Man手册文档 复制到别的设备上进行安装,从而避免了非常费时的创建过程
        创建好的 Man手册 存放于 /linux-4.4.8/Documentation/Docbook/man/ 目录下,将该目录中各子目录及其包含的 *.9.gz 文件复制到需要安装手册的设备的相同目录下(如果没有就创建一个)。
        然后以 root权限运行以下命令进行手册的安装:
        mkdir -p /usr/local/man/man9
        install Docbook/man/*.9.gz /usr/local/man/man9

        命令执行成功后就可以在目标设备上同样使用 Man命令 查看内核函数的帮助文档了。

【参考文献】
    [1] 博客 雪夜流星
    [2] 博客 star_shining的博客

本文转载自:http://blog.csdn.net/qidi_huang/article/details/51277935

共有 人打赏支持
wuqingyi
粉丝 0
博文 39
码字总数 19055
作品 0
厦门
程序员
私信 提问
Linux C/C++编程手册查阅方法

Linux Programmer's Manual & User Commands https://www.kernel.org/doc/man-pages/ 搜索框输入epoll调用搜索引擎查找 在线搜索查看man手册(比如查epoll),可以直接收藏,方便下次点击搜索: h...

eechen
2014/03/08
0
3
将内核API编译为man手册

一般我们都知道用man手册去查看libc库的API的用法,例如man strcpy、man stat ...其实内核里的一些API也可以编译到man手册中, 这样对于学习内核的,也无疑是一种很好的资料。 ------------...

ustbgaofan
2014/09/09
0
2
Linux下man page 详解

经常用man查各种函数和指令,也经常遇到明明是要找函数结果显示了指令或者关键字,很是郁闷,索性对man研究了一番。 比如我需要看看exit函数怎么使用,以及用什么头文件 是不是想着直接:,看...

qq_38646470
04/30
0
0
Linux系统基础知识-嵌入式迅为4412开发板学习笔记

1. 什么是Linux系统编程 详情了解:http://topeetboard.com 更多了解:https://arm-board.taobao.com Linux系统编程分为三个部分:系统调用、C库和C编译器。 系统调用系统编程的基础是系统调...

qq58c201976f8b2
2017/03/10
0
0
嵌入式4412开发板学习知识-Linux系统基础知识

本文转自迅为iTOP-4412开发板实战书籍:http://www.topeetboard.com 1. 什么是Linux系统编程 Linux系统编程分为三个部分:系统调用、C库和C编译器。 系统调用系统编程的基础是系统调用,也结...

歌之王子殿下
2016/07/05
303
1

没有更多内容

加载失败,请刷新页面

加载更多

windows上类似dnsmasq的软件Dual DHCP DNS Server

官网地址:http://dhcp-dns-server.sourceforge.net/官网定向的下载地址:https://sourceforge.net/projects/dhcp-dns-server/files/ 设置参考地址:http://blog.51cto.com/zhukeqiang/18264......

xueyuse0012
今天
3
0
LinkedHashMap源码解析

前言 HashMap中的元素时无序的,也就是说遍历HashMap的时候,顺序和放入的顺序是不一样的。 如果需要有序的Map,就可以采用LinkedHashMap. LinkedHashMap通过维护一个包含所有元素的双向链表,...

grace_233
今天
3
0
初识flask

文档 0.10.1版本 http://www.pythondoc.com/flask/index.html 1.0.2版本 https://dormousehole.readthedocs.io/en/latest/ 安装flask $ pip3 install flaskCollecting flask Downloading......

yimingkeji
昨天
5
0
Akka系统《sixteen》译

Actor是一个封装状态(state)和行为(behavior)的对象,它们只通过交换消息通信(放入收件人邮箱的邮件)。从某种意义上说,Actor是最严格的面向对象编程形式,但它更适合将他们视为人:在与Act...

woshixin
昨天
3
0
技术工坊|如何开发一款以太坊钱包(深圳)

【好消息!】HiBlock区块链技术工坊已经成功举办了26期,其中北京1期,西安1期,成都2期,上海22期。经常有社区的小伙伴问定期举办技术工坊的除了上海以外,其他城市有没有?现在区块链技术工...

HiBlock
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部