Difference: BuildingunderlinuxusingGNUmake (r2 vs. r1)

Question

Dear gpstk developers,

First of all, thanks for this comprehensive package for rinex processing, released under GPL. Reading here and there about 'jam' for gentoo, I discovered that it is not included in Gentoo portage tree. Hence, I preferred the automake/autoconf method. I encounter one problem after following the standard procedure described in INSTALL.

Here is my current environment and versions:

mwathele@sirac /usr/local/src/gpstk/1.7 $ uname -a
Linux sirac 2.6.36-gentoo-r5-mactelpatches-macbook-core2duo #1 SMP PREEMPT Wed De 29 18:48:05 CET 2010 x86_64 Intel(R) Core(TM)2 CPU T7600 @ 2.33GHz GenuineIntel NU/Linux
mwathele@sirac /usr/local/src/gpstk/1.7 $ autoconf --version
autoconf (GNU Autoconf) 2.65
mwathele@sirac /usr/local/src/gpstk/1.7 $ m4 --version
m4 (GNU M4) 1.4.15
mwathele@sirac /usr/local/src/gpstk/1.7 $ automake --version
automake (GNU automake) 1.11.1
mwathele@sirac /usr/local/src/gpstk/1.7 $ libtool --version
libtool (GNU libtool) 2.2.10

Here is the procedure I followed:

mwathele@sirac /usr/local/src/gpstk/1.7 $ ./autogen.sh
mwathele@sirac /usr/local/src/gpstk/1.7 $ ./configure -prefix /usr/local/gpstk/1.7
mwathele@sirac /usr/local/src/gpstk/1.7 $ make
Making all in src
make[1]: Entering directory `/usr/local/src/gpstk/1.7/src'
/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DPACKAGE_NAME=\"GPSTK\" -DPACKAGE_TARNAME=\"gpstk\" -DPACKAGE_VERSION=\"1.7\" -DPACKAGE_STRING=\"GPSTK\ 1.7\" -DPACKAGE_BUGREPORT=\"http://www.gpstk.org/\" -DPACKAGE_URL=\"\" -DPACKAGE=\"gpstk\" -DVERSION=\"1.7\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_LIBINTL_H=1 -DHAVE_STDDEF_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_SYS_TIMEB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDBOOL_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_STDLIB_H=1 -DHAVE_MALLOC=1 -DHAVE_STDLIB_H=1 -DHAVE_REALLOC=1 -DLSTAT_FOLLOWS_SLASHED_SYMLINK=1 -DHAVE_BZERO=1 -DHAVE_FLOOR=1 -DHAVE_FTIME=1 -DHAVE_GETCWD=1 -DHAVE_GETTIMEOFDAY=1 -DHAVE_MEMSET=1 -DHAVE_MKDIR=1 -DHAVE_MODF=1 -DHAVE_POW=1 -DHAVE_RE_COMP=1 -DHAVE_REGCOMP=1 -DHAVE_SQRT=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_STRTOUL=1 -DHAVE_LIBPTHREAD=/\*\*/ -I.     -g -O2 -MT ANSITime.lo -MD -MP -MF .deps/ANSITime.Tpo -c -o ANSITime.lo ANSITime.cpp
libtool: Version mismatch error.  This is libtool 2.2.4, but the
libtool: definition of this LT_INIT comes from libtool 2.2.10.
libtool: You should recreate aclocal.m4 with macros from libtool 2.2.4
libtool: and run autoconf again.
make[1]: *** [ANSITime.lo] Error 63
make[1]: Leaving directory `/usr/local/src/gpstk/1.7/src'
make: *** [all-recursive] Error 1

I'm not really used to automake and autoconf but searching around this error, I found that running 'libtoolize' before doing anything fix this issue. There are some warnings you might consider.

mwathele@sirac /usr/local/src/gpstk/1.7 $ libtoolize
libtoolize: putting auxiliary files in `.'.
libtoolize: linking file `./ltmain.sh'
libtoolize: You should add the contents of the following files to `aclocal.m4':
libtoolize:   `/usr/share/aclocal/libtool.m4'
libtoolize:   `/usr/share/aclocal/ltoptions.m4'
libtoolize:   `/usr/share/aclocal/ltversion.m4'
libtoolize:   `/usr/share/aclocal/ltsugar.m4'
libtoolize:   `/usr/share/aclocal/lt~obsolete.m4'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.

(ltmain.sh is now a symlink to /usr/share/libtool/config/ltmain.sh instead of a plain file found in distributed tar file)

mwathele@sirac /usr/local/src/gpstk/1.7 $ ./autogen.sh
mwathele@sirac /usr/local/src/gpstk/1.7 $ ./configure -prefix /usr/local/gpstk/1.7
mwathele@sirac /usr/local/src/gpstk/1.7 $ make

==> now everything is running fine

One comment about automake/autoconf philosophy: distributed package should be compiled directly from a provided './configure' without the need for developer tools. Why don't you provide this file in your distributed archive?

Best regards,

Marc

-- MarcWathelet - 27 Mar 2011

Answer

ALERT! If you answer a question - or have a question you asked answered by someone - please remember to edit the page and set the status to answered. The status is in a drop-down list below the edit box.

No such template def TMPL:DEF{PROMPT:supportquery} Please note this package is LGPL, not GPL.

I think I missed it. In your last paragraph you asked why we con't provide "this file" -- which file are you referring to?

We have varied significantly over time in what files we have distributed to support make. I personally have no problem changing what we provide. However, I have yet to see an authoritative guide as to what to provide. Invariably the answer is "this works for me" or "go look at the scripts." If you have such a guide (not a man page), I would appreciate it.

-- BenHarris - 28 Mar 2011 No such template def TMPL:DEF{PROMPT:supportquery}

View topic | View difference side by side | History: r2 < r1 | More topic actions
 
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback