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

Re: Cannnot build nbd from git clone



I can now get as far as producing a configure shell script, but if I run it, I get

./configure: line 14206: syntax error near unexpected token `2.26.0,'
./configure: line 14206: `AM_PATH_GLIB_2_0(2.26.0, HAVE_GLIB=yes, as_fn_error $? "Missing glib" "$LINENO" 5, gthread)'

I get the same error if I run the configure in the extracted tarball.

AM_PATH_GLIB_2_0 was in the warning I got from autoreconf -i:

rparkins@rparkins64:~/Downloads/nbd> autoreconf -i
configure.ac:264: warning: macro 'AM_PATH_GLIB_2_0' not found in library

I do have gcc and glib installed. So there still seems to be something missing, both in the git repository and in the tarball.

Richard


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, 15:13
Subject: Re: Cannnot build nbd from git clone

On 12/12/2017 04:36 PM, richard parkins wrote:
> Thanks for your reply.
>
> The README.md says "do the normal configure/make/make installdance".

That's written from the perspective of using the tarball created by
'make dist', rather than a fresh git checkout.  Yeah, it could probably
be improved to list the developer-only steps to get from git checkout to
'make dist' tarball (ends with the creation of configure), compared to
the steps for everyone to get from tarball to built binaries (starts by
running configure).

> It doesn't say anything about autoreconf.... I guessed that "configure" meant "autoconf", but I don't see how a user who hasn't already built that particular project should know to do "autoreconf". There are many configure/build tools available on the Internet, and just about every tool I have tried to download and build uses a different one.

A lot of projects have a 'bootstrap' or 'autogen.sh' or other script
that runs both autoreconf AND other preparatory steps to get from the
git checkout to configure via a single command.  But I'm not seeing an
obvious candidate for such a bootstrap script in git.  Wouter?

> Rather clearer bulld instructions would really help.
> See https://github.com/rparkins999/sqliteman/tree/master/Sqliteman for an example of how I, at least, think a build instruction should look.
> Missing files in the git repository are often caused by a failure to do a git commit after creating the file for the first time, or if the files should get built, a failure to include the instructions to build them.

Missing files in git is intentional - if it can be easily regenerated by
any developer following the normal developer's steps, then it doesn't
belong in git (it may belong in the tarball, though, as the tarball
should cater to a wider audience that is unlikely to have
autoconf/automake/other tools already installed).


--
Eric Blake, Principal Software Engineer
Red Hat, Inc.          +1-919-301-3266
Virtualization:  qemu.org | libvirt.org



Reply to: