Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

autoconf -f fails on a fresh git clone #217

Closed
dimitarvp opened this issue Dec 19, 2014 · 9 comments
Closed

autoconf -f fails on a fresh git clone #217

dimitarvp opened this issue Dec 19, 2014 · 9 comments

Comments

@dimitarvp
Copy link

Curreng GIT revision I am testing on: c391479c5852f165c4be85b6e39d1290ae2d4a58.

Running ./autogen.sh yields this output:

$ ./autogen.sh
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -I osm2pgsql/m4
autoreconf: configure.ac: tracing
autoreconf: configure.ac: adding subdirectory osm2pgsql to autoreconf
autoreconf: Entering directory `osm2pgsql'
autoreconf: configure.ac: not using Autoconf
autoreconf: Leaving directory `osm2pgsql'
autoreconf: configure.ac: not using Libtool
autoreconf: running: /usr/bin/autoconf --force
configure.ac:25: error: possibly undefined macro: AC_MSG_ERROR
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1

A small further research pinpointed the problem at the autoconf --force command.

Versions:

autoconf, autoreconf: 2.69
automake: 1.14.1
pkg-config: 0.28
Linux: 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt2-1 (2014-12-08) x86_64 GNU/Linux (a VirtualBox machine)

Went on a small Google hunt and also tried this:

mkdir osm2pgsql/m4
aclocal -I m4 --install

That seems to have helped a few people, but not in this case.

It's been a long time since I used autoconf/automake extensively. Could you provide help?

@lonvia
Copy link
Member

lonvia commented Dec 19, 2014

Please, check if you have the autoconf-archive package installed.

@dimitarvp
Copy link
Author

@lonvia Can't believe it was something that simple. Sorry.

Might help if you add another pre-install step?

sudo apt-get install automake autoconf autoconf-archive pkg-config

Thank you for your help!

@dimitarvp
Copy link
Author

While we're at this:

./configure --enable-64bit-ids
./configure: line 4521: AX_LIB_GEOS: command not found
configure: error: required library not found

I have libgeos-dev, libgeos++-dev, libgeos-c1, libgeos-3.3.3, libgeos-3.4.2 installed. What am I missing?

@lonvia
Copy link
Member

lonvia commented Dec 19, 2014

That normally happens when you forgot to clone recursively. Does git submodule update --init help?

@dimitarvp
Copy link
Author

$ git submodule update --init
Submodule 'osm2pgsql' (https://github.com/openstreetmap/osm2pgsql.git) registered for path 'osm2pgsql'
Cloning into 'osm2pgsql'...
remote: Counting objects: 5217, done.
remote: Total 5217 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (5217/5217), 31.11 MiB | 1.91 MiB/s, done.
Resolving deltas: 100% (3698/3698), done.
Checking connectivity... done.
Submodule path 'osm2pgsql': checked out '7d780c931c209f539c84e7d02a8f12f2a81e4d67'

So it did indeed download it, but the ./configure --enable-64bit-ids did throw the same error afterwards.

@lonvia
Copy link
Member

lonvia commented Dec 19, 2014

You have to run autogen.sh again.

I've added the missing dependency in the installation instructions.

@lonvia lonvia closed this as completed Dec 19, 2014
@dimitarvp
Copy link
Author

Thank you for your continuing help!

./autogen.sh procudes a lot of output now, but stops here:

autoreconf: running: /usr/bin/autoconf --force
autoreconf: running: /usr/bin/autoheader --force
autoreconf: running: automake --add-missing --copy --force-missing
configure.ac:44: error: required file '../ltmain.sh' not found
Makefile.am: installing './INSTALL'
autoreconf: automake failed with exit status: 1

Thanks for the Wiki update. Might help if you also copy the recursive clone instructions; that might not be obvious to everybody -- that's pretty evident, taking me as an example ;)

EDIT: Solved it myself. This might help you in making your install / Wiki docs complete:

https://www.gnu.org/software/automake/manual/html_node/Error-required-file-ltmain_002esh-not-found.html

(Basically invoked libtoolize before ./autogen.sh; the articles states it should be invoked before aclocal and automake, though, hope this helps.)

@lonvia
Copy link
Member

lonvia commented Dec 19, 2014

autoconf seems to get confused occasionally, it might be a good idea to simply start from scratch with git clone --recursive git://github.com/twain47/Nominatim.git.

The recursive clone instructions are already there and so is the command how to recover if you forgot. I could add the latter to the quick instructions in the readme.

@dimitarvp
Copy link
Author

Fair enough. I admit I didn't even look at the Wiki. I came to the GitHub repo with the expectation that the instructions here are complete.

Hopefully this ticket will help you a little with your docs here on GitHub; I took a few minutes now to check the Wiki and it is indeed very well written. Nice job.

Thanks a lot for your help!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants