[GRASS5] no links to GRASS 5.4 binaries

Glynn Clements glynn at gclements.plus.com
Sun Nov 28 20:30:23 EST 2004


Florian Goessmann wrote:

> >> r.mapcalc3:
> >>
> >> /home/florian/Documents/SRCes/grass-5.4.0/build/src/raster/r.mapcalc3/
> >> lex.yy.o(.text+0x11f7): In function `yy_get_next_buffer':
> >> /home/florian/Documents/SRCes/grass-5.4.0/src/raster/r.mapcalc3/
> >> mapcalc.l:58: undefined reference to `readline'
> >
> > Line 58 of mapcalc.l is within a block which is conditionalised upon
> > HAVE_READLINE_READLINE_H:
> >
> > 	#ifdef HAVE_READLINE_READLINE_H
> > 		if (isatty(fileno(input_stream)))
> > 		{
> > 			char *line_read;
> > 	
> > 			line_read = readline("mapcalc> ");
> >
> > The error indicates that the build is trying to use an object file
> > from a previous build attempt, when --with-readline was used.
> >
> > You need to clean up the previous build. If you used the gmake build
> > mechanism (--enable-gmake), "make distclean" should do this. If you
> > used the alternate build mechanism (--disable-gmake, which should be
> > the default for 5.4), simply delete the entire build directory (with
> > "rm -rf").
> 
> that's what i thought when i checked the source, but deleting the whole 
> build directory didn't solve it.

It may be that some files (e.g. include/config.h) are left over in the
source directory from your original gmake-based build. Re-run
configure from the source directory with --enable-gmake, then run
"make maintainer-clean". Then do a non-gmake build.

It definitely works without --enable-readline, and binary
distributions should be built without that switch.

-- 
Glynn Clements <glynn at gclements.plus.com>




More information about the grass-dev mailing list