[GRASS5] _gtty & _stty errors

On Wednesday, December 6, 2000, at 06:10 PM, Eric G . Miller wrote:

On Wed, Dec 06, 2000 at 03:31:57PM -0800, Jeshua Lacock wrote:
> > > Report the same error:
> > > /usr/bin/ld: Undefined symbols:
> > > _gtty
> > > _stty
> >
> > Those should be defined in libncurses, I think. Do you have the
> > ncurses5 library installed? It may be the linker is not finding the
> > libraries correctly (maybe use the --with-libs=/path/to/libdir). The
> > linker is often very limited in where it will look for thing by default,
> > hence all the -L/usr/X11R6/lib and similar flags. See other post as
> > well.
>
> Hi gang,
>
> Ok, I installed the libncurses 5.2 and it appears that they were already installed
because modules that compiled before gave a error stating that
"/usr/lib/libncurses.a is out of date; rerun ranlib(1)". After updating with ranlib
the modules that worked before now work, however, I still get the errors with the above
modules:
>
> /usr/bin/ld: Undefined symbols:
> _gtty
> _stty
>
> Which leads me to believe that they must be defined somewhere else.... Where??
>
> I would really like to figure this one out as it will fix 6 modules....

Well, not sure where those get defined, but I find "gtty" and "stty" in
libc.a. I couldn't find those symbols in libncurses.a, libcurses.a, or
libtermcap.a -- sorry for the red herring. You can use "nm
/path/to/staticlib.a | grep '<symbol>'" to hunt for where symbols are
defined. See if libc.a has 'stty' (it probably does). Are you using
the --with-USE_TERMIO directive? If not, maybe it's worth a try.

--

Hi Eric,

Where would use the "--with-USE_TERMIO directive"?

It looks like things took a turn for the worst. After installing libncurses 5.2, I now get an "Undefined symbols: _winch" error for modules that compiled fine before. I know that winch is defined in both the Apple provided /usr/include/curses.h and the just installed libncurses 5.2 /usr/local/include/curses.h.

Note the Apple provided /usr/include/curses.h and the libncurses 5.2 /usr/local/include/curses.h are different sizes, Apples: 13.5kb and libncurses 5.2 is 60.7kb.

I tried "cc -L/usr/include ..." and "cc -L/usr/local/include..." and both attempts reveal the same error.

I am really frustrated, and I don't know what else to but *gasp* re-install my entire system and reinstall all the libraries and sources. Which I would hate to do because most of beta 9 is now built....

Heeeelllp,

Jeshua Lacock
Cartographer/Owner
http://SierraMaps.com
http://3dTopoMaps.com
Telephone: (760) 935-4481
----------------------------------------
If you want to unsubscribe from GRASS Development Team mailing list write to:
minordomo@geog.uni-hannover.de with
subject 'unsubscribe grass5'

On Wed, Dec 06, 2000 at 06:55:24PM -0800, Jeshua Lacock wrote:

Hi Eric,

Where would use the "--with-USE_TERMIO directive"?

It an option to ./configure (see ./configure --help for all the
options). However ...

It looks like things took a turn for the worst. After installing
libncurses 5.2, I now get an "Undefined symbols: _winch" error for
modules that compiled fine before. I know that winch is defined in
both the Apple provided /usr/include/curses.h and the just installed
libncurses 5.2 /usr/local/include/curses.h.

Note the Apple provided /usr/include/curses.h and the libncurses 5.2
/usr/local/include/curses.h are different sizes, Apples: 13.5kb and
libncurses 5.2 is 60.7kb.

Yes, this is most likely the problem. You might temporarily move
libncurses includes (*.h files) and libs (libncurses.a, libncurses.so)
to a directory where the compile won't find them. It may be the curses
library supplied by Apple is sufficient to do the job.

I tried "cc -L/usr/include ..." and "cc -L/usr/local/include..." and
both attempts reveal the same error.

The option is -I/path/to/includes for header files. The -L/path/to/libs
is only used by the linker (ld) for libraries.

I am really frustrated, and I don't know what else to but *gasp*
re-install my entire system and reinstall all the libraries and
sources. Which I would hate to do because most of beta 9 is now
built....

Hopefully, such drastic measures are not required. I think the conflict
between the various curses libraries is likely the problem. That is,
the Apple curses probably declares the _gtty and _stty functions/macros,
but there is nothing in libncurses with those symbols.

Luck,
--
Eric G. Miller <egm2@jps.net>

----------------------------------------
If you want to unsubscribe from GRASS Development Team mailing list write to:
minordomo@geog.uni-hannover.de with
subject 'unsubscribe grass5'