[GRASSLIST:6024] Re: compilation: grass5.0.2

Buchan Milne bgmilne at cae.co.za
Fri Apr 11 13:12:02 EDT 2003


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Glynn Clements wrote:
> javier garcia - CEBAS wrote:
>
>
>>First of all. Congratulations for grass5.0.2!
>>
>>The ./configure can't find the readline libs.
>>
>>But I had installed grass5.0.0pre with readline and I've got
libreadline.a in
>>/usr/lib and a libreadline.so.4.2 in /lib.
>>
>>Could you help me with this?
>
>
> Failure to detect readline normally occurs because readline requires
> some other library (e.g. libncurses, libtermcap or libtinfo).
> Unfortunately, there isn't any obvious way of detecting which
> additional libraries we should attempt to use.
>
> For the time being, you have to either:

Then why does grass 5.0.0 detect it on the same machine?

This is the most recent grass-5.0.0 build I did on this machine:

[bgmilne at bgmilne rpm]$ rpm -qip
mdk/RPMS.mdk9.1/i586/grass-5.0.0-2mdk.i586.rpm
Name        : grass                        Relocations: (not relocateable)
Version     : 5.0.0                             Vendor: MandrakeSoft
Release     : 2mdk                          Build Date: Sat 22 Feb 2003
16:54:36 SAST
Install date: (not installed)               Build Host: bgmilne.cae.co.za
Group       : Sciences/Geosciences          Source RPM:
grass-5.0.0-2mdk.src.rpm
Size        : 83689682                         License: GPL
Packager    : Buchan Milne <bgmilne at linux-mandrake.com>
URL         : http://grass.itc.it/
Summary     : Geographic Resources Analysis Support System
Description :
GRASS (Geographic Resources Analysis Support System)
is a raster-based GIS, vector GIS,
image processing system, graphics production
system, data management system, and spatial
modeling system. A graphical user interface
for X-Windows is provided.

As you can see, readline hasn't been modified any time recently:

[bgmilne at bgmilne rpm]$ rpm -qi readline-devel
Name        : readline-devel               Relocations: (not relocateable)
Version     : 4.3                               Vendor: MandrakeSoft
Release     : 4mdk                          Build Date: Mon 05 Aug 2002
11:36:16 SAST
Install date: Wed 23 Oct 2002 13:00:04 SAST      Build Host:
ke.mandrakesoft.com
Group       : Development/C                 Source RPM:
readline-4.3-4mdk.src.rpm
Size        : 3284392                          License: GPL
Packager    : Thierry Vignaud <tvignaud at mandrakesoft.com>
Summary     : Files for developing programs that use the readline library.
Description :
The "readline" library will read a line from the terminal and return it,
using prompt as a prompt.  If prompt is null, no prompt is issued.  The
line returned is allocated with malloc(3), so the caller must free it when
finished.  The line returned has the final newline removed, so only the
text of the line remains.

>
> a) ensure that the libreadline which configure finds is a dynamic
> library (libreadline.so) with correct dependency information, or
>
> b) don't use --with-readline, and manually edit src/CMD/head and
> src/include/config.h once the configure script has completed.
>

I think something has broken. So I started a build of 5.0.0:

relevant parts of ./configure of 5.0.0

checking whether to use Readline... yes
checking for location of Readline includes...
checking for readline/readline.h... yes
checking for readline/history.h... yes
checking for location of Readline library...
checking for readline in -lreadline... no
checking for readline in -lreadline... yes


Grass 5.0.0 configure summary:

GRASS is now configured for i586-mandrake-linux-gnu

  Source directory:          /home/bgmilne/rpm/BUILD/grass-5.0.0
  Build directory:           /home/bgmilne/rpm/BUILD/grass-5.0.0
  Installation directory:    /usr/grass5
  C compiler:                gcc -O2 -fomit-frame-pointer -pipe
- -march=i586 -mcpu=pentiumpro
  FORTRAN compiler:          g77

  NVIZ:                       yes

  X11 support:                yes
  DBM support:                yes
  JPEG support:               yes
  TIFF support:               yes
  PNG support:                yes
  GD support:                 yes
  Tcl/Tk support:             yes
  PostgreSQL support:         yes
  OpenGL(R) support:          yes
  ODBC support:               yes
  FFTW support:               yes
  BLAS support:               yes
  LAPACK support:             yes
  Motif support:              yes
  FreeType support:           yes
  GLw support:                yes
  NLS support:                yes
  Readline support:           yes

Error from config.log in 5.0.2:

configure:5118: checking whether to use Readline
configure:5139: checking for location of Readline includes
configure:5165: checking for readline/readline.h
configure:5173: gcc -E   conftest.c >/dev/null 2>conftest.out
configure:5209: checking for readline/history.h
configure:5217: gcc -E   conftest.c >/dev/null 2>conftest.out
configure:5251: checking for location of Readline library
configure:5276: checking for readline in -lreadline
configure:5293: gcc -o conftest -O2 -fomit-frame-pointer -pipe
- -march=i586 -mcpu
=pentiumpro     conftest.c -lreadline   1>&5
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../libreadline.so:
undefined reference to `tgetnum'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../libreadline.so:
undefined reference to `tgoto'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../libreadline.so:
undefined reference to `tgetflag'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../libreadline.so:
undefined reference to `BC'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../libreadline.so:
undefined reference to `tputs'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../libreadline.so:
undefined reference to `PC'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../libreadline.so:
undefined reference to `tgetent'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../libreadline.so:
undefined reference to `UP'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.2/../../../libreadline.so:
undefined reference to `tgetstr'
collect2: ld returned 1 exit status
configure: failed program was:
#line 5282 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
    builtin and then its argument prototype would still apply.  */
char readline();

int main() {
readline()
; return 0; }



The only things that have changed recently on this box are glibc etc
(although I am running current - except for tcl8.4 which I need to build
grass against before I upgrade - cooker), but since 5.0.0 starts
building, I think it's a grass problem. And it seems readline is current.

Oh well, guess I will have to try it at home (Mandrake 9.1), it's too
late to fix this now ...

Buchan

- --
|--------------Another happy Mandrake Club member--------------|
Buchan Milne                Mechanical Engineer, Network Manager
Cellphone * Work            +27 82 472 2231 * +27 21 8828820x121
Stellenbosch Automotive Engineering         http://www.cae.co.za
GPG Key                   http://ranger.dnsalias.com/bgmilne.asc
1024D/60D204A7 2919 E232 5610 A038 87B1 72D6 AC92 BA50 60D2 04A7
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQE+lvdgrJK6UGDSBKcRAgLxAJwLj++jAj/oTKnZKj5OxqNeObHBeQCfbL6b
8aQXWwKIjo0z8F507exS3Vc=
=h66o
-----END PGP SIGNATURE-----




More information about the grass-user mailing list