[GRASS5] compiling on IRIX 6.5 with gcc 3.0
Glynn Clements
glynn.clements at virgin.net
Mon Oct 29 13:22:23 EST 2001
Andreas Lange wrote:
> i just finished a compiling run on IRIX 6.5 with gcc 3.0.
> I have several important problems:
>
> d.area:
> Gmakefile uses install -D, which is no valid option on IRIX, Solaris
> etc. Not to the native BSD install from IRIX, nor to the freeware GNU
> install. Without -D it seems to work.
This should probably just use "cp".
> s.hull:
> on Solaris some problems with -lm in the library dependency line, should
> be removed and changed to $(MATHLIB) on the compile line.
Agreed; will do.
> XDRIVER:
> Does not compile on IRIX and Solaris due to missing library for
> 'setenv'. Which library this is referenced in?
It appears to be a BSD function. It's present in GNU libc, but I'm
guessing that other systems might need -lbsd/-lcompat/-lbsd-compat.
I'll change it to use putenv(), which is a POSIX function.
> grass.postgresql:
> libpq-fe.h is not found, although ./configure does not issue any
> warnings.
> OK, this may be from the manual editing of the header (see below).
Huh?
> NVIZ2.2:
> nvizAppInit.c: tk.h: No such file or directory
> In file included from nvizAppInit.c:8:
> togl.h:92:17: tcl.h: No such file or directory
> togl.h:93:16: tk.h: Error 0
> In file included from nvizAppInit.c:8:
> togl.h:150: parse error before '*' token
Did the Tcl/Tk configure checks pass?
> (on IRIX and Solaris/SPARC).
> On IRIX it compiles with -I/usr/freeware/include added to the include
> line.
> But gives many many compiling warnings.
>
> I'll upload the output of ./configure etc. to:
> http://mitglied.tripod.de/AndreasLange/igrass/index.html
I'll take a look.
> On IRIX i had to change the line
> # COMPILE_FLAGS = -g -O2 -I/usr/freeware/include
> to
> COMPILE_FLAGS = -g -O2
> otherwise the compilation of flate.c in the gis lib fails with the
> following error:
> SRC = /disk2/opt/grass/grass/src
> CMD = /disk2/opt/grass/grass/src/CMD
> UNUSED = /disk2/opt/grass/grass/unused
> HEADER = head.mips-sgi-irix6.5
> ARCH = mips-sgi-irix6.5
> GISBASE = /disk2/opt/grass/grass/dist.mips-sgi-irix6.5
> VERSION = 5.0.0pre2 September 2001
> #################################################################
> /disk2/opt/grass/grass/src/libes/gis
> make -f OBJ.mips-sgi-irix6.5/make.rules
>
> gcc -g -O2 -I/usr/freeware/include
> -I/disk2/opt/grass/grass/src/include -c flate.c -o
> OBJ.mips-sgi-irix6.5/flate.o
> flate.c: In function `break_compile':
> flate.c:123: `NULL' undeclared (first use in this function)
> flate.c:123: (Each undeclared identifier is reported only once
> flate.c:123: for each function it appears in.)
> make: *** [OBJ.mips-sgi-irix6.5/flate.o] Error 1
This occurs if HAVE_ZLIB_H is undefined.
Does /usr/freeware/include contain a file called config.h? That would
break stuff.
The CFLAGS definition in the generated make.rules file is wrong:
CFLAGS = $(COMPILE_FLAGS) -I$(INCLUDE_DIR) $(EXTRA_CFLAGS) $(USE_TERMIO)
For gcc, the "-I$(INCLUDE_DIR)" should come first.
> For the png-modules i have to add:
> -I/usr/include/freeware
> and -lm to -lpng to get them to compile.
PNGLIB should include -lm and/or -lz if either of these have to be
specified explicitly.
--
Glynn Clements <glynn.clements at virgin.net>
More information about the grass-dev
mailing list