couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brian Candler <B.Cand...@pobox.com>
Subject Re: [VOTE] Apache CouchDB 0.11.0 release, first round
Date Tue, 23 Mar 2010 15:26:00 GMT
On Tue, Mar 23, 2010 at 02:47:40PM +0000, Noah Slater wrote:
> I cannot reproduce this error.

Hmm. Replicates for me. Ubuntu Hardy i386. ./configure is OK, but 'make'
gives the following very quickly (doesn't even need 'make distcheck')

...
make[3]: Leaving directory `/data/v/build/apache-couchdb-0.11.0/etc/launchd'
Making all in logrotate.d
make[3]: Entering directory `/data/v/build/apache-couchdb-0.11.0/etc/logrotate.d'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/data/v/build/apache-couchdb-0.11.0/etc/logrotate.d'
make[3]: Entering directory `/data/v/build/apache-couchdb-0.11.0/etc'
if test "/bin/mkdir -p"; then \
	    /bin/mkdir -p init; \
	else \
	    if test ! -d init; then \
	        mkdir init; \
	    fi \
	fi
sed -e "s|%configure_input%|init/couchdb. Generated from init/couchdb.tpl by configure.|"
\
	    -e "s|%bindir%|/usr/local/bin|" \
	    -e "s|%sysconfdir%|/usr/local/etc|" \
	    -e "s|%localstaterundir%|/usr/local/var/run/couchdb|" \
	    -e "s|%couchdb_command_name%|`echo couchdb | sed 's,x,x,'`|" \
	< init/couchdb.tpl > init/couchdb
sed -e "s|%localstatelogdir%|/usr/local/var/log/couchdb|g" < logrotate.d/couchdb.tpl >
logrotate.d/couchdb
make[3]: *** No rule to make target `default/couchdb', needed by `all-am'. Stop.
make[3]: Leaving directory `/data/v/build/apache-couchdb-0.11.0/etc'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/data/v/build/apache-couchdb-0.11.0/etc'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/data/v/build/apache-couchdb-0.11.0'
make: *** [all] Error 2

make --debug doesn't help much:

...
This program built for i486-pc-linux-gnu
Reading makefiles...
Updating goal targets....
 File `all-am' does not exist.
   File `default/couchdb' does not exist.
  Must remake target `default/couchdb'.
make[3]: Entering directory `/data/v/build/apache-couchdb-0.11.0/etc'
make[3]: *** No rule to make target `default/couchdb', needed by `all-am'. Stop.
make[3]: Leaving directory `/data/v/build/apache-couchdb-0.11.0/etc'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/data/v/build/apache-couchdb-0.11.0/etc'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/data/v/build/apache-couchdb-0.11.0'
make: *** [all] Error 2

Now, I'm afraid I don't really grok this autoconf/automake spew, but I can
see that it's correct. Looking at relevant lines from etc/Makefile,

    all-am: Makefile $(DATA)

    DATA = $(init_DATA) $(launchd_DATA) $(nobase_sysconf_DATA)

    nobase_sysconf_DATA = $(default_sysconf_data) $(init_sysconf_data)

    init_sysconf_data = default/couchdb

and there is no default/couchdb.

Looking at my git checkout, I *do* have etc/default/couchdb, but it is
missing from the tarball:

$ tar -tzf /v/downloads/apache-couchdb-0.11.0.tar.gz | grep default
apache-couchdb-0.11.0/etc/default/
apache-couchdb-0.11.0/etc/default/Makefile.am
apache-couchdb-0.11.0/etc/default/Makefile.in
apache-couchdb-0.11.0/etc/couchdb/default.ini.tpl.in

If it's not giving a build problem for you, it may be that INIT_TRUE='#' on
your system, which would comment out this line - see the init_sysconf_data
line in etc/Makefile.in

This suggests that working systems are only working because they have
init_enabled=false. Looking at the configure script, this could be because:

(1) they don't have /etc/rc.d or /etc/init.d directories (unlikely on
Debian??)

(2) they have /Library/LaunchDaemons directory (which explains why Mac
building works)

Anyway, I think the file missing from the tarball is the problem.

Regards,

Brian.

Mime
View raw message