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

Re: Cannnot build nbd from git clone





From: Eric Blake <eblake@redhat.com>
To: richard parkins <aleph0hpela-suse@yahoo.co.uk>; "nbd@other.debian.org" <nbd@other.debian.org>
Sent: Wednesday, 13 December 2017, 23:13
Subject: Re: Cannnot build nbd from git clone

Most likely, your build environment is lacking those dependencies.  Not
every distro names their packages the same, so I can't always tell you
want package to install; but on Fedora 27,
glib2-devel-2.54.2-1.fc27.x86_64 provides /usr/share/aclocal/glib-2.0.m4
which provides AM_PATH_GLIB.

Thanks, OK, I installed glib2 development tools.

[I think there is a naming confusion here. Normally I would expect "development tools for package X" to mean tools required to develop package X itself, rather than programs using package X. With a library, there are of course more possibilities. You can be just installing a package which loads the library, or building a package which loads the library, or building the library itself.]

Anyway I can now get a successful run of configure,  which generates a Makefile. However when I run make, I get [after installing doctools and running make as far as it works]:

rparkins@rparkins64:~/Downloads/nbd> make
make  all-recursive
make[1]: Entering directory '/home/rparkins/Downloads/nbd'
Making all in .
make[2]: Entering directory '/home/rparkins/Downloads/nbd'
make[2]: Leaving directory '/home/rparkins/Downloads/nbd'
Making all in man
make[2]: Entering directory '/home/rparkins/Downloads/nbd/man'
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/Downloads/nbd/man/nbd-client.8.in.sgml
nsgmls:/home/rparkins/Downloads/nbd/man/nbd-client.8.in.sgml:1:59:W: cannot generate system identifier for public text "-//OASIS//DTD DocBook V4.5//EN"
nsgmls:/home/rparkins/Downloads/nbd/man/nbd-client.8.in.sgml:27:0:E: reference to entity "REFENTRY" for which no system identifier could be generated
nsgmls:/home/rparkins/Downloads/nbd/man/nbd-client.8.in.sgml:1:0: entity was defined here
nsgmls:/home/rparkins/Downloads/nbd/man/nbd-client.8.in.sgml:27:0:E: DTD did not contain element declaration for document type name
nsgmls:/home/rparkins/Downloads/nbd/man/nbd-client.8.in.sgml:29:9:E: element "REFENTRY" undefined

... lots more errors

I tried copying the .sgml files from the tarball, in case the versions in the git repository didn't match the .sh.in files which I had copied from the tarball because they were missing from the git clone, but this didn't help.


Do the developers ever try building nbd from a clean git clone or a clean extract from the tarball (neither of which currently works)? It seems to me a pretty essential regression test for an open source project. If I can't build from the published sources, it isn't really an open source project at all.

A list of the packages needed to run the build would be really helpful too. As it happens I recently installed a complete new distro on the machine on which I'm trying to build, so I didn't have anything which doesn't get installed automatically.

Richard


Reply to: