以下工具用于处理文档。某些工具可能是可选的,如注释所示。
这是 DocBook 本身的定义。我们目前使用 4.5 版本;您不能使用更高或更低的版本。您需要XML版本的 DocBook DTD,而不是SGML版本。
这些包含将 DocBook 源代码转换为其他格式(例如HTML.
的处理指令。目前所需的最低版本是 1.77.0,但建议使用最新版本以获得最佳效果。
xmllint
#此库及其包含的 xmllint
工具用于处理 XML。许多开发者已经安装了 Libxml2,因为它也用于构建 PostgreSQL 代码。但是,请注意,xmllint
可能需要从单独的子包中安装。
xsltproc
#xsltproc
是一个 XSLT 处理器,即一个使用 XSLT 样式表将 XML 转换为其他格式的程序。
这是一个用于将 XML 转换为 PDF(除其他外)的程序。仅当您想以 PDF 格式构建文档时才需要它。
我们已经记录了处理文档所需的各种工具的几种安装方法。这些将在下面描述。这些工具可能还有一些其他打包的发行版。请将包状态报告给文档邮件列表,我们会将这些信息包含在这里。
要使用 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 提供的程序需要设置以下环境变量。对于基于英特尔的机器,请使用以下命令
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 提供的 xmllint
和 xsltproc
版本而不是 MacPorts 或 Homebrew 的版本,但您仍然需要安装 DocBook DTD 和样式表,并设置一个指向它们的目录文件。
configure
检测 #在构建文档之前,您需要运行 configure
脚本,就像构建 PostgreSQL 程序本身时一样。检查运行结束附近输出;它应该类似于以下内容
checking for xmllint... xmllint checking for xsltproc... xsltproc checking for fop... fop checking for dbtoepub... dbtoepub
如果找不到 xmllint
或 xsltproc
,您将无法构建任何文档。 fop
仅用于以 PDF 格式构建文档。 dbtoepub
仅用于以 EPUB 格式构建文档。
如有必要,您可以告诉 configure
在哪里找到这些程序,例如
./configure ... XMLLINT=/opt/local/bin/xmllint ...
如果您更喜欢使用 Meson 构建 PostgreSQL,请改为运行 meson setup
(如 第 17.4 节 所述),然后查看 第 J.4 节。
如果您在文档中看到任何不正确的内容,与您对特定功能的体验不符,或者需要进一步澄清,请使用 此表格 报告文档问题。