[GRASS5] debian compilation errors

Dear grass developers, Markus says to post this here.
---------------------
On Sun, Oct 27, 2002 at 05:42:29PM +0800, Dan Jacobson wrote:

After a 110 minute modem download:

checking whether to use Tcl/Tk... yes
checking for location of Tcl/Tk includes...
checking for tcl.h... no
configure: error: *** Unable to locate Tcl includes.

but
$ locate /tcl.h
/usr/include/tcl8.3/tcl.h

I suppose I will wait for Fog to make the .deb

Please post this to the GRASS developers ML, there may be
an easy "trick".

Markus

Subject: Re: 5.1 compilation errors
On Sun, Oct 27, 2002 at 04:50:47PM +0800, Dan Jacobson wrote:

I did
$ make clean distclean mixclean
$"CFLAGS=\"-g -Wall\" ./configure
--with-grass50=/home/jidanni/tmp/grass51/src/grass50_exp_2002_10_25
--enable-opengl=no

and still
  -o OBJ.i686-pc-linux-gnu/GS2.o -c GS2.c
In file included from GS2.c:19:
gstypes.h:15: GL/gl.h: No such file or directory
GS2.c:24: GL/gl.h: No such file or directory

Please post this to the developer's ML.

Please post this to the developer's ML.
Without ncurses package you cannot compile GRASS. Also
MEsa-devel package must be installed (gl.h).

Without ncurses the libedit won't compile, subsequently
many modules do not compile.

M.

In file included from edit_cats.c:32:
/home/jidanni/tmp/grass51/src/grass51_exp_2002_10_25/include/vask.h:2: curses.h: No such file or directory
make[2]: *** [OBJ.i686-pc-linux-gnu/edit_cats.o] Error 1
make[2]: Leaving directory `/home/jidanni/tmp/grass51/src/grass51_exp_2002_10_25/lib/edit'
make[1]: *** [subdirs] Error 1
make[1]: Leaving directory `/home/jidanni/tmp/grass51/src/grass51_exp_2002_10_25/lib'
make: *** [default] Error 1

In file included from GS2.c:19:
gstypes.h:15: GL/gl.h: No such file or directory
GS2.c:24: GL/gl.h: No such file or directory
make[2]: *** [OBJ.i686-pc-linux-gnu/GS2.o] Error 1
make[2]: Leaving directory `/home/jidanni/tmp/grass51/src/grass51_exp_2002_10_25/lib/ogsf'

earlier:

configure: In function `main':
configure:2637: structure has no member named `maxy'
configure: failed program was:
#line 2631 "configure"
#include "confdefs.h"

#include <curses.h>
  WINDOW w;
  
int main() {
w.maxy = 0;
; return 0; }
configure:2660: gcc -c -g -Wall conftest.c 1>&5
--
http://jidanni.org/ Taiwan(04)25854780

Dan Jacobson wrote:

> checking whether to use Tcl/Tk... yes
> checking for location of Tcl/Tk includes...
> checking for tcl.h... no
> configure: error: *** Unable to locate Tcl includes.
>
> but
> $ locate /tcl.h
> /usr/include/tcl8.3/tcl.h

Use:

./configure --with-tcltk-includes=/usr/include/tcl8.3/tcl.h ...

Assuming that a similar situation exists for Tk, use:

./configure --with-tcltk-includes='/usr/include/tcl8.3 /usr/include/tk8.3' ...

More generally, if a header isn't in /usr/include, then you will
normally need additional configure switches.

> I did
> $ make clean distclean mixclean
> $"CFLAGS=\"-g -Wall\" ./configure
> --with-grass50=/home/jidanni/tmp/grass51/src/grass50_exp_2002_10_25
> --enable-opengl=no

Oh; so this is GRASS51.

The configure script for GRASS51 is based on an old version of the
GRASS5 configure script which, unlike the current version, doesn't
attempt to conditionalise parts of the build according to which
features were enabled.

> and still
> -o OBJ.i686-pc-linux-gnu/GS2.o -c GS2.c
> In file included from GS2.c:19:
> gstypes.h:15: GL/gl.h: No such file or directory
> GS2.c:24: GL/gl.h: No such file or directory

Yep; the OGSF library won't compile without OpenGL. This shouldn't be
fatal, though (if it is, that should be fixed); it should just mean
that you don't get libogsf or NVIZ.

Please post this to the developer's ML.

Please post this to the developer's ML.
Without ncurses package you cannot compile GRASS. Also
MEsa-devel package must be installed (gl.h).

Without ncurses the libedit won't compile, subsequently
many modules do not compile.

libvask won't compile either, which is much more significant.

configure: In function `main':
configure:2637: structure has no member named `maxy'
configure: failed program was:
#line 2631 "configure"
#include "confdefs.h"

#include <curses.h>
  WINDOW w;
  
int main() {
w.maxy = 0;
; return 0; }
configure:2660: gcc -c -g -Wall conftest.c 1>&5

This is harmless. The field may be called either "maxy" or "_maxy";
configure tries both, so one of the tests will fail.

--
Glynn Clements <glynn.clements@virgin.net>