[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Cannnot build nbd from git clone



On Thu, Dec 14, 2017 at 05:22:53PM +0000, richard parkins wrote:
> I've installed everything that Yast2 (OpenSUSE's package installer) can find
> that is related to docbook or SGML, but I still can't build.
> 
> Here is the log from a git clone:
[...]
> LC_ALL=C docbook2man nbd-client.8.in.sgml
> Using catalogs: /etc/sgml/catalog, /etc/sgml/catalog, /usr/share/sgml/
> CATALOG.docbook-dsssl-stylesheets
> Using stylesheet: /usr/share/sgml/docbook/utils-0.6.14/docbook-utils.dsl#print
> Working on: /home/rparkins/sandbox/nbd/man/nbd-client.8.in.sgml
> nsgmls:/home/rparkins/sandbox/nbd/man/nbd-client.8.in.sgml:1:59:W: cannot
> generate system identifier for public text "-//OASIS//DTD DocBook V4.5//EN"

This means it can't find the DTD for DocBook V4.5.

I hadn't realized, but we're apparently using DocBook 4.1 for some files
and 4.5 for others.

The differences between the two aren't that huge, and it appears that
switching everything to 4.1 doesn't break anything on my machine.
However, that feels like the wrong thing to do -- if we're going to
change DTD versions, we should change to the latest version, rather than
the older version.

According to
<https://build.opensuse.org/package/show/openSUSE%3ALeap%3A42.3/docbook_4>,
the correct DTD should be in the "docbook_4" package. Did you install
that? If so, can you run

rpm -ql docbook_4

and check if the DTD for docbook 4.5 is present?

Oddly enough, according to the above URL, the docbook_4 package should
have both the 4.1 and 4.5 DTDs present, but for some reason only the 4.1
version is found on your machine. This might be a bug in the OpenSUSE
docbook packages; normally, installing the DTDs should also register
them in the SGML catalog, but if that's not done for whatever reason
then nsgmls won't find them, and then you get this problem.

> nsgmls:/home/rparkins/sandbox/nbd/man/nbd-client.8.in.sgml:27:0:E: reference to
> entity "REFENTRY" for which no system identifier could be generated
[...]

These are a normal result of docbook2man not finding the correct DTD and
hence not being able to process the input. Once you have the correct
DTD, that should go away automatically.

-- 
Could you people please use IRC like normal people?!?

  -- Amaya Rodrigo Sastre, trying to quiet down the buzz in the DebConf 2008
     Hacklab


Reply to: