以下工具用于处理文档。一些可能是可选的,如有说明。
这是DocBook本身的定义。我们目前使用版本4.5;您不能使用更高或更低版本。您需要DocBook DTD的XML变体,而不是SGML变体。
这些包含将DocBook源文件转换为其他格式(如HTML)的处理说明。
目前最低要求版本为1.77.0,但建议使用最新版本以获得最佳效果。
xmllint
这个库及其包含的xmllint
工具用于处理XML。许多开发人员可能已经安装了Libxml2,因为在构建PostgreSQL代码时也会使用它。但请注意,xmllint
可能需要从单独的子包中安装。
xsltproc
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" ...
虽然可以使用苹果提供的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 ...