所以我跟着这些(Linux From Scratch)说明测试我的 DocBook DSSSL 版本,我得到:
$ onsgmls -sv test.sgm
onsgmls:I: "OpenSP" version "1.5.2"
onsgmls:test.sgm:1:61:W: cannot generate system identifier for public text "-//Davenport//DTD DocBook V3.0//EN"
onsgmls:test.sgm:1:61:E: reference to entity "CHAPTER" for which no system identifier could be generated
onsgmls:test.sgm:1:0: entity was defined here
onsgmls:test.sgm:1:61:E: DTD did not contain element declaration for document type name
onsgmls:test.sgm:2:8:E: element "CHAPTER" undefined
onsgmls:test.sgm:2:15:E: element "TITLE" undefined
onsgmls:test.sgm:3:5:E: element "PARA" undefined
我尝试通过卸载并重新安装依赖项来回溯我的步骤...但没有成功。
答案1
LFS 页面指示安装 DocBook SGML DTD 3.1 和 4.5,但您正在构建的文档显然使用 DocBook SGML DTD 3.0。所以你需要获取那个版本(或者调整测试文档)。您所遵循的说明在这方面是错误的。
答案2
检查您的发行版是否已有 docbook 包。查看 Debian/Ubuntu,我看到了 docbook、docbook-dsssl 和其他几个软件包。 FreeBSD 在 ports 中有 Docbook,我相信许多其他 Linux 发行版也有它。这一定比从源代码安装 Docbook 更容易。