Skip to content

J.2. 工具集#

J.2.1. 在 Fedora、RHEL 和衍生产品上安装
J.2.2. 在 FreeBSD 上安装
J.2.3. Debian 软件包
J.2.4. macOS
J.2.5. 由 configure 检测

以下工具用于处理文档。有些可能是非必需的,如注释所示。

DocBook DTD #

这是 DocBook 本身的定义。我们当前使用版本 4.5;您不能使用更高或更低版本。您需要 DocBook DTD 的 变体,而不是 变体。

DocBook XSL 样式表 #

这些包含用于将 DocBook 源转换为其他格式(如 )的处理指令。

当前所需的最低版本为 1.77.0,但建议使用最新可用版本以获得最佳效果。

Libxml2 适用于 xmllint #

此库及其包含的 xmllint 工具用于处理 XML。许多开发人员已经安装了 Libxml2,因为它在构建 PostgreSQL 代码时也会使用。但请注意,可能需要从单独的子包中安装 xmllint

Libxslt 适用于 xsltproc #

xsltproc 是一个 XSLT 处理器,即一个使用 XSLT 样式表将 XML 转换为其他格式的程序。

FOP #

这是一个用于将 XML 转换为 PDF 等格式的程序。仅当您想要以 PDF 格式构建文档时才需要它。

我们记录了处理文档所需各种工具的多种安装方法的经验。这些将在下面进行描述。这些工具可能还有其他一些打包发行版。请将软件包状态报告给文档邮件列表,我们将在此处包含该信息。

J.2.1. 在 Fedora、RHEL 和衍生产品上安装#

要安装必需的软件包,请使用

yum install docbook-dtds docbook-style-xsl libxslt fop

J.2.2. 在 FreeBSD 上安装#

要使用pkg安装必需的软件包,请使用

pkg install docbook-xml docbook-xsl libxslt fop

doc目录构建文档时,您需要使用gmake,因为提供的 makefile 不适用于 FreeBSD 的make

J.2.3. Debian 软件包#

为Debian GNU/Linux提供了一整套文档工具软件包。要安装,只需使用

apt-get install docbook-xml docbook-xsl libxml2-utils xsltproc fop

J.2.4. macOS#

如果您使用 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"
...

虽然可以使用 Apple 提供的xmllintxsltproc版本,而不是 MacPorts 或 Homebrew 中的版本,但您仍然需要安装 DocBook DTD 和样式表,并设置指向它们的目录文件。

J.2.5.configure检测#

在构建文档之前,您需要运行configure脚本,就像构建PostgreSQL程序本身一样。检查运行结束时的输出;它应该类似于以下内容

checking for xmllint... xmllint
checking for xsltproc... xsltproc
checking for fop... fop
checking for dbtoepub... dbtoepub

如果找不到xmllintxsltproc,您将无法构建任何文档。仅需要fop来构建 PDF 格式的文档。仅需要dbtoepub来构建 EPUB 格式的文档。

如有必要,您可以告诉configure在何处找到这些程序,例如

./configure ... XMLLINT=/opt/local/bin/xmllint ...

如果您希望使用 Meson 构建PostgreSQL,请按照第 17.4 节中的说明运行meson setup,然后参阅第 J.4 节