以下工具用于处理文档。有一些可能是可选的,如附注所示。
这是 DocBook 本身的定义。我们目前使用的是 4.5 版;您不能使用更晚或更早的版本。您需要XMLDocBook DTD 的变体,而不是SGML变体。
这些包含将 DocBook 源文件转换为其他格式(例如)的处理说明HTML.
当前所需的最低版本是 1.77.0,但建议使用最新可用版本以获得最佳效果。
xmllint
的 Libxml2 #此库及其中包含的 xmllint
工具用于处理 XML。许多开发者已经安装了 Libxml2,因为它在构建 PostgreSQL 代码时也使用。但是,请注意可能需要从单独的子包安装 xmllint
。
xsltproc
的 Libxslt #xsltproc
是 XSLT 处理器,也就是说,这是一个使用 XSLT 样式表将 XML 转换为其他格式的程序。
这是一个将 XML 转换为 PDF 等内容的程序。仅当您想要以 PDF 格式构建文档时才需要它。
我们记录了处理文档所需各种工具的多种安装方法。将在下面进行描述。可能会有一些其他软件包化的发行版可用于这些工具。请向文档邮件列表报告软件包状态,我们将在此处包含该信息。
若要安装所需的软件包,请使用
yum install docbook-dtds docbook-style-xsl libxslt fop
若要使用 pkg
安装所需的软件包,请使用
pkg install docbook-xml docbook-xsl libxslt fop
从 doc
目录构建文档时,需要使用 gmake
,因为提供的 Makefile 不适合 FreeBSD 的 make
。
有一套完整的文档工具包可供 Debian GNU/Linux 使用。若要安装,只需使用
apt-get install docbook-xml docbook-xsl libxml2-utils xsltproc fop
如果你使用 MacPorts,以下方法可为你设置
sudo port install docbook-xml docbook-xsl-nons libxslt fop
如果你使用 Homebrew,请使用这种方法
brew install docbook docbook-xsl libxslt fop
Homebrew 提供的程序需要设置以下环境变量。对于基于 Intel 的机器,使用这种方法
export XML_CATALOG_FILES=/usr/local/etc/xml/catalog
对于基于 Apple Silicon 的机器,使用这种方法
export XML_CATALOG_FILES=/opt/homebrew/etc/xml/catalog
如果没有它,xsltproc
会引发这样的错误
I/O error : Attempt to load network entity http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd postgres.sgml:21: warning: failed to load external entity "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" ...
虽然可以不通过 MacPorts 或 Homebrew 而使用 Apple 提供的 xmllint
和 xsltproc
版本,但你仍然需要安装 DocBook DTD 和样式表,并设置指向它们的目录文件。
configure
检测 #在你构建文档之前,你需要运行 configure
脚本,就像在构建 PostgreSQL 程序本身时一样。检查运行接近末尾处的输出;它应类似于以下内容
checking for xmllint... xmllint checking for xsltproc... xsltproc checking for fop... fop checking for dbtoepub... dbtoepub
如果未找到 xmllint
或 xsltproc
,你将无法构建任何文档。仅在以 PDF 格式构建文档时才需要 fop
。仅在以 EPUB 格式构建文档时才需要 dbtoepub
。
如有必要,你可以告诉 configure
如何查找这些程序,例如
./configure ... XMLLINT=/opt/local/bin/xmllint ...
如果你希望使用 Meson 构建 PostgreSQL,请按照 第 17.4 节 中所述运行 meson setup
,然后参见 第 J.4 节。