[GRASSLIST:5542] GRASS 5.0.1 compilation issues

I'm attempting to compile GRASS 5.0.1 on a SunBlade 1000. There are quite a few
"failed" messages in the config.log file. I assume that is normal. When I
"make" the package, the only errors written to "error.log" are

Compilation error in module: src/raster/r.tiff (ignored)
Compilation error in module: src/display/devices/PNGdriver (ignored)

I assume these can be ignored.

Now I attempt to start GRASS and I get the error message:

   Sorry, I need to know a more specific terminal type than "".^M

I've tracked it down to the program call "set_data" found in "etc/Init.sh".
When I replace the "set_data" program with the one from the pre-compiled SUN
package, all works just fine.

I thought it might be a library issue so I ran "ldd" to see which dynamic
libraries are required:

ldd /usr/local/grass5/etc/set_data
        libncurses.so.5 => /usr/local/lib/libncurses.so.5
        libcurses.so.1 => /usr/lib/libcurses.so.1
        libm.so.1 => /usr/lib/libm.so.1
        libnsl.so.1 => /usr/lib/libnsl.so.1
        libz.so.1 => /usr/lib/libz.so.1
        libsocket.so.1 => /usr/lib/libsocket.so.1
        libc.so.1 => /usr/lib/libc.so.1
        libdl.so.1 => /usr/lib/libdl.so.1
        libmp.so.2 => /usr/lib/libmp.so.2
        /usr/platform/SUNW,Sun-Blade-1000/lib/libc_psr.so.1

If I swap "set_data" with the pre-compiled version, the executable points to the
same libraries so it is not an issue with which library is used.

I also checked source code to see if the error message was coming from the GRASS
source code or some system call. I could not find the offending message in any
.c or .h file so I assume(?) it is a system call. I'm using the Sun Workshop 6
C compiler.

Has anyone seen this type of message before?

Thanks,

Wayne

-----------------------
Wayne Gibson
Oregon State University
gibson@coas.oregonstate.edu
(541) 737-5696

Wayne Gibson wrote:

I'm attempting to compile GRASS 5.0.1 on a SunBlade 1000. There are quite a few
"failed" messages in the config.log file. I assume that is normal.

Yes; error messages in config.log are normal.

When I
"make" the package, the only errors written to "error.log" are

Compilation error in module: src/raster/r.tiff (ignored)
Compilation error in module: src/display/devices/PNGdriver (ignored)

I assume these can be ignored.

Yes (provided that you don't actually need to use those modules).

However, if you can locate the corresponding error messages (in the
output from "make"), I would be interested in seeing them, as they may
indicate that something should be fixed.

Now I attempt to start GRASS and I get the error message:

   Sorry, I need to know a more specific terminal type than "".^M

This is probably from the curses library; it certainly isn't part of
set_data itself.

The message implies that the TERM environment variable is either unset
or empty. TERM should be set to the name of the type of terminal in
use (e.g. "xterm", "vt100" etc).

I've tracked it down to the program call "set_data" found in "etc/Init.sh".
When I replace the "set_data" program with the one from the pre-compiled SUN
package, all works just fine.

I thought it might be a library issue so I ran "ldd" to see which dynamic
libraries are required:

ldd /usr/local/grass5/etc/set_data
        libncurses.so.5 => /usr/local/lib/libncurses.so.5
        libcurses.so.1 => /usr/lib/libcurses.so.1

This doesn't look too good.

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

Hi Wayne,

i assume you are using Solaris 9 OE?

Wayne Gibson wrote:

I'm attempting to compile GRASS 5.0.1 on a SunBlade 1000. There are quite a few
"failed" messages in the config.log file. I assume that is normal. When I
"make" the package, the only errors written to "error.log" are

Compilation error in module: src/raster/r.tiff (ignored)
Compilation error in module: src/display/devices/PNGdriver (ignored)

You need to install tiff and png packages (from www.sunfreeware.com) for
the required libraries.

I assume these can be ignored.

Now I attempt to start GRASS and I get the error message:

   Sorry, I need to know a more specific terminal type than "".^M

I've tracked it down to the program call "set_data" found in "etc/Init.sh".
When I replace the "set_data" program with the one from the pre-compiled SUN
package, all works just fine.

I thought it might be a library issue so I ran "ldd" to see which dynamic
libraries are required:

ldd /usr/local/grass5/etc/set_data
        libncurses.so.5 => /usr/local/lib/libncurses.so.5
        libcurses.so.1 => /usr/lib/libcurses.so.1
        libm.so.1 => /usr/lib/libm.so.1
        libnsl.so.1 => /usr/lib/libnsl.so.1
        libz.so.1 => /usr/lib/libz.so.1
        libsocket.so.1 => /usr/lib/libsocket.so.1
        libc.so.1 => /usr/lib/libc.so.1
        libdl.so.1 => /usr/lib/libdl.so.1
        libmp.so.2 => /usr/lib/libmp.so.2
        /usr/platform/SUNW,Sun-Blade-1000/lib/libc_psr.so.1

IMHO on Solaris 9 the path /usr/local/lib is not in the standard library
search path. There are two options:
edit your .profile (depending on which shell you use):
LD_LIBRARY_PATH=/usr/local/lib
export LD_LIBRARY_PATH
(this will work only for your account)
or
use crle (compare man crle) as root to add /usr/local/lib to the system
wide library search path.
(theoretically there are other options, e. g. linking the libraries from
/usr/local/lib to /usr/lib)

I have compiled a package for grass 5.0.1 on Solaris 9 OE/SPARC, but i
don't want to upload it, as i can not support the setup of the package.

HTH,

Andreas

--
Andreas Lange, 65187 Wiesbaden, Germany, Tel. +49 611 807850

Andreas Lange wrote:

> I'm attempting to compile GRASS 5.0.1 on a SunBlade 1000. There are quite a few
> "failed" messages in the config.log file. I assume that is normal. When I
> "make" the package, the only errors written to "error.log" are
>
> Compilation error in module: src/raster/r.tiff (ignored)
> Compilation error in module: src/display/devices/PNGdriver (ignored)

You need to install tiff and png packages (from www.sunfreeware.com) for
the required libraries.

He didn't report an error regarding r.{in,out}.png, so I suspect that
he has the PNG libraries, and it's the lack of the GD library which is
causing PNGdriver to fail.

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