有关 libc 的手册页从哪里来?
它们不能来自 glibc,因为它们与 glibc 的 API 略有不同。
一个例子是 mmap 的手册页。它描述了一个标志
MAP_UNINITIALIZED
。
但是 glibc 中不存在这个标志。 Glibc 不想支持这个标志,因为他们说它是“仅限内核”。如果你 grep glibc source 你还可以看到他们从来没有在任何地方定义这个宏。 那么,如果 libc 的手册页不是来自 glibc,那么它们又是从哪里来的呢?
如果您想知道手册页(或程序等)位于何处,请致电
whereis
:
$ whereis mmap
mmap: /usr/share/man/man2/mmap.2.gz /usr/share/man/man3/mmap.3posix.gz
如果您需要知道该文件来自哪里,假设您已经使用
apt
安装了它,请尝试
apt-file
:$ apt-file search mmap.2.gz
manpages-de-dev: /usr/share/man/de/man2/mmap.2.gz
manpages-dev: /usr/share/man/man2/mmap.2.gz
manpages-fr-dev: /usr/share/man/fr/man2/mmap.2.gz
manpages-ja-dev: /usr/share/man/ja/man2/mmap.2.gz
manpages-nl-dev: /usr/share/man/nl/man2/mmap.2.gz
manpages-ru-dev: /usr/share/man/ru/man2/mmap.2.gz