2025年9月25日: PostgreSQL 18 发布!
支持的版本: 当前 (18) / 17 / 16 / 15 / 14 / 13
开发版本: devel
不支持的版本: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4

J.2. 工具集 #

以下工具用于处理文档。其中一些可能是可选的,如注明所示。

DocBook DTD #

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

DocBook XSL Stylesheets #

这些文件包含用于将 DocBook 源文件转换为其他格式(如HTML.

当前所需的最低版本是 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 节

提交更正

如果您在文档中发现任何不正确、与您对特定功能的体验不符或需要进一步澄清的内容,请使用 此表单 报告文档问题。