一旦你把所有的东西都设置好以后,切换到doc/src/sgml
目录,并且运行下面小节中介绍的命令之一就可以编译文档(记住使用 GNU make)。
要编译文档的HTML版本:
doc/src/sgml$
make html
这也是默认的目标。这个命令的输出将出现在子目录html
中。
要用postgresql.org所使用的样式表 而不是默认的简单样式生成 HTML 文档:
doc/src/sgml$
make STYLE=website html
如果使用STYLE=website
选项,生成的 HTML 文件包括对托管在postgresql.org 上的样式表的引用,需要网络访问来查看。
我们使用 DocBook XSL 样式表来把DocBook
refentry
页转换成适合于手册页的 *roff 输出。要创建手册页,使用命令:
doc/src/sgml$
make man
要使用FOP产生文档的PDF版本,可以使用下列命令之一,取决于你喜欢的纸张格式:
A4格式:
doc/src/sgml$
make postgres-A4.pdf
U.S.信纸格式:
doc/src/sgml$
make postgres-US.pdf
因为PostgreSQL文档很大,FOP会要求可观的内存量。因此,在一些系统上,构建过程将会由于内存相关的错误而失败。通常可以通过在配置文件~/.foprc
中配置Java的堆设置来解决这类问题,例如:
# FOP binary distribution FOP_OPTS='-Xmx1500m' # Debian JAVA_ARGS='-Xmx1500m' # Red Hat ADDITIONAL_FLAGS='-Xmx1500m'
这是所要求的最小内存量,当然更多的内存会让编译过程更快一些。在内存非常小(小于1GB)的系统上,编译过程会因为磁盘交换而非常慢或者根本就不工作。
在默认配置中,FOP会为每一页发出一条
INFO
消息。日志级别可以通过~/.foprc
更改:
LOGCHOICE=-Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog LOGLEVEL=-Dorg.apache.commons.logging.simplelog.defaultlog=WARN
也可以手工使用其他XSL-FO处理器,但是自动编译过程仅支持FOP。