8.65. Man-DB-2.9.4

Man-DB 软件包包含查找和阅读 man 页面的程序。

估计构建时间: 0.4 SBU
需要硬盘空间: 40 MB

8.65.1. 安装 Man-DB

准备编译 Man-DB:

sed -i '/find/s@/usr@@' init/systemd/man-db.service.in

./configure --prefix=/usr                        \
            --docdir=/usr/share/doc/man-db-2.9.4 \
            --sysconfdir=/etc                    \
            --disable-setuid                     \
            --enable-cache-owner=bin             \
            --with-browser=/usr/bin/lynx         \
            --with-vgrind=/usr/bin/vgrind        \
            --with-grap=/usr/bin/grap

配置选项的含义:

sed -i '/find/s@/usr@@' init/systemd/man-db.service.in

修改硬编码的,指向 find 工具的路径,它被我们安装到 /bin 目录。

--disable-setuid

该选项防止将 man 程序 setuid 到用户 man

--enable-cache-owner=bin

该选项使得系统范围的缓存文件所有者为用户 bin

--with-...

这三个选项设定一些默认程序。lynx 是基于文本的 web 浏览器 (安装过程可在 BLFS 中查阅),vgrind 将程序源代码转换成 Groff 输入,grap 用于在 Groff 文档中画图。vgrindgrap 在阅读 man 手册页面时一般用不到。它们不是 LFS 或 BLFS 的一部分,但如果需要的话,您应该可以在完成 LFS 的构建后自行安装它们。

编译该软件包:

make

运行以下命令以测试编译结果:

make check

安装该软件包:

make install

8.65.2. LFS 中的非英文 man 手册页面

下表展示了 Man-DB 假定的安装在 /usr/share/man/<ll> 中的 man 手册页面的编码字符集。另外,Man-DB 还能正确地判断出这些页面是否为 UTF-8 编码。

表 8.1. 传统 8 位 man 手册页面的预期字符编码

语言 (代码) 编码 语言 (代码) 编码
丹麦语 (da) ISO-8859-1 克罗地亚语 (hr) ISO-8859-2
德语 (de) ISO-8859-1 匈牙利语 (hu) ISO-8859-2
英语 (en) ISO-8859-1 日语 (ja) EUC-JP
西班牙语 (es) ISO-8859-1 朝鲜语 (ko) EUC-KR
爱沙尼亚语 (et) ISO-8859-1 立陶宛语 (lt) ISO-8859-13
芬兰语 (fi) ISO-8859-1 拉脱维亚语 (lv) ISO-8859-13
法语 (fr) ISO-8859-1 马其顿语 (mk) ISO-8859-5
爱尔兰语 (ga) ISO-8859-1 波兰语 (pl) ISO-8859-2
加利西亚语 (gl) ISO-8859-1 罗马尼亚语 (ro) ISO-8859-2
印度尼西亚语 (id) ISO-8859-1 俄语 (ru) KOI8-R
冰岛语 (is) ISO-8859-1 斯洛伐克语 (sk) ISO-8859-2
意大利语 (it) ISO-8859-1 斯洛文尼亚语 (sl) ISO-8859-2
挪威巴克摩语 (nb) ISO-8859-1 拉丁文书写的塞尔维亚语 (sr@latin) ISO-8859-2
荷兰语 (nl) ISO-8859-1 塞尔维亚语 (sr) ISO-8859-5
挪威尼诺斯克语 (nn) ISO-8859-1 土耳其语 (tr) ISO-8859-9
挪威语 (no) ISO-8859-1 乌克兰语 (uk) KOI8-U
葡萄牙语 (pt) ISO-8859-1 越南语 (vi) TCVN5712-1
瑞典语 (sv) ISO-8859-1 简体中文 (zh_CN) GBK
白俄罗斯语 (be) CP1251 简体中文,新加坡 (zh_SG) GBK
保加利亚语 (bg) CP1251 繁体中文,香港特别行政区 (zh_HK) BIG5HKSCS
捷克语 (cs) ISO-8859-2 繁体中文 (zh_TW) BIG5
希腊文 (el) ISO-8859-7    

[注意]

注意

用该表之外的语言编写的 man 手册页面不被支持。

8.65.3. Man-DB 的内容

安装的程序: accessdb, apropos (link to whatis), catman, lexgrog, man, mandb, manpath, 以及 whatis
安装的库: libman.so 和 libmandb.so (都在 /usr/lib/man-db 中)
安装的目录: /usr/lib/man-db, /usr/libexec/man-db, and /usr/share/doc/man-db-2.9.4

简要描述

accessdb

whatis 数据库内容转储为人类可读格式

apropos

搜索 whatis 数据库,显示包含给定字符串的系统命令的简要描述

catman

创建或更新预先格式化的 man 手册页面

lexgrog

显示给定 man 手册页面的单行摘要信息

man

格式化并显示请求的 man 手册页面

mandb

创建或更新 whatis 数据库

manpath

显示 $MANPATH 的内容,或者 (如果 $MANPATH 未设定) 根据 man.conf 和用户环境确定的合适搜索路径

whatis

搜索 whatis 数据库,显示包含给定关键词的系统命令的简要描述

libman

包含 man 运行时支持

libmandb

包含 man 运行时支持