选择 打开 改范围 完整检索页
受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
开发版本: 19 / devel
不受支持的版本: 13 / 12 / 11 / 10
当前 PostgreSQL 版本不在支持生命周期内。
您可以参阅当前版本的对应页面,或其他在上面列出的活跃大版本。

J.2. 工具集 #

以下工具用于处理文档。其中一些可能是可选的,具体见说明。

DocBook DTD

这是 DocBook 自身的定义。我们当前使用 4.2 版;不能使用更高或更低的版本。 你需要的是 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 和样式表, 并设置一个指向它们的 catalog 文件。

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 ...