[GRASS5] grass-5.0.0 on SGI IRIX 6.5
Markus Neteler
neteler at itc.it
Wed Dec 11 04:39:01 EST 2002
On Tue, Dec 10, 2002 at 11:44:35PM +0000, Glynn Clements wrote:
>
> Markus Neteler wrote:
>
> > [...xterm explanations...]
> >
> > I must admit that I am no termcap expert.
> > >From a user's perspective (which is not necessarily a developer's
> > perspective) I "just" see that previous functionionality is gone.
> > IMHO GRASS should support cursor keys without changing the
> > system's settings (support out of the box).
>
> Garbage in, garbage out. If the system lies about which codes are
> needed to enable the cursor keys and/or which codes the cursor keys
> generate, curses won't be able to recognise that a cursor key was
> pressed.
ok.
> However, it isn't certain that this is a termcap/terminfo issue. Did
> the configure script detect keypad()? The message looks like:
>
> checking for keypad in -lncurses... yes
checking for keypad in -lncurses... yes
uname -a
Linux thuille 2.4.18-18.7.xsmp #1 SMP Wed Nov 13 19:01:42 EST 2002 i686 unknown
> Or check whether HAVE_KEYPAD is defined in config.h,
cat src/include/config.h | grep HAVE_KEYPAD
#define HAVE_KEYPAD 1
> or whether
> running "nm -D" on a vask-using program shows a dependency upon
> "keypad".
nm -D dist.i686-pc-linux-gnu/etc/set_data | grep keypad
-> nothing
nm -D dist.i686-pc-linux-gnu/etc/bin/inter/v.digit | grep keypad
-> nothing
> Which library is actually being used? (run "ldd" on any vask-using
> program, e.g. etc/set_data).
ldd dist.i686-pc-linux-gnu/etc/set_data
libncurses.so.5 => /usr/lib/libncurses.so.5 (0x40017000)
libtermcap.so.2 => /lib/libtermcap.so.2 (0x4006f000)
libm.so.6 => /lib/libm.so.6 (0x40073000)
libz.so.1 => /usr/lib/libz.so.1 (0x40095000)
libc.so.6 => /lib/libc.so.6 (0x400a3000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
> What is $TERM?
echo $TERM
xterm
> Are either of TERMCAP or TERMINFO set in the environment?
set | grep TERM
COLORTERM=
TERM=xterm
printenv | grep TERM
COLORTERM=
TERM=xterm
> Do you have a terminfo entry for $TERM?
locate terminfo | grep 'xterm$'
/usr/share/terminfo/a/aixterm
/usr/share/terminfo/c/color_xterm
/usr/share/terminfo/f/fixterm
/usr/share/terminfo/j/jaixterm
/usr/share/terminfo/x/xterm
To be sure I have recompiled set_data:
gcc -I/hardmnt/thuille1/ssi/cvsgrass_exp/src/include -O3 -mcpu=pentiumpro -Wall -DD_LOCATION_NAME=\"\" -DD_GISDBASE=\"\" -DVERSION_NUMBER=\"'5.0.1-cvs'\" -DVERSION_UPDATE_PKG=\"''\" -c set_data.c -o OBJ.i686-pc-linux-gnu/set_data.o
set_data.c: In function `list_mapsets':
set_data.c:296: warning: suggest parentheses around assignment used as truth
valueset_data.c: At top level:
/hardmnt/thuille1/ssi/cvsgrass_exp/src/include/gis.h:35: warning: `GRASS_copyright' defined but not used
gcc -L/hardmnt/thuille1/ssi/cvsgrass_exp/src/libes/LIB.i686-pc-linux-gnu -o /amd/ssi0/ssi/neteler/cvsgrass_exp/dist.i686-pc-linux-gnu/etc/set_data OBJ.i686-pc-linux-gnu/set_data.o OBJ.i686-pc-linux-gnu/mke_mapset.o OBJ.i686-pc-linux-gnu/mke_loc.o OBJ.i686-pc-linux-gnu/chk_dbase.o OBJ.i686-pc-linux-gnu/other.o -lgedit -lgis -lvask -lncurses -lbsd-compat -lm -lz
nm -D dist.i686-pc-linux-gnu/etc/set_data | grep keypad
-> again nothing
grep ncurses src/CMD/head/head.i686-pc-linux-gnu
CURSES = -lncurses $(COMPATLIB)
locate libncurses
/usr/lib/libncurses.so.5
/usr/lib/libncurses.so.5.2
/usr/lib/libncurses.a
/usr/lib/libncurses.so
/usr/lib/libncurses.so.4
/usr/lib/libncurses.so.4.0
ls -la /usr/lib/libncurses.so
lrwxrwxrwx 1 root root 15 Aug 1 2001 /usr/lib/libncurses.so -> libncurses.so.5
nm -D /usr/lib/libncurses.so | grep keypad
00028b70 T _nc_keypad
00028920 T keypad
Layman's summary:
It seems that the symbol is present, detected, but not used in GRASS although
defined in config.h.
Markus
More information about the grass-dev
mailing list