[GRASS5] Darwin Pre1 gtty stty errors
Jeshua Lacock
jeshua at SierraMaps.com
Mon Jun 4 16:23:36 EDT 2001
Back on Wed, 6 Dec 2000, Eric Miller wrote regarding [GRASS5] _gtty &
_stty errors:
>> On Wed, Dec 06, 2000 at 03:31:57PM -0800, Jeshua Lacock wrote:
>> ... snip ...
>>
>> 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.
I was not able to find the symbols in libc.a after I installed the
Darwin static c library (Libc). I also ran configure with the TERMIO
directive.
And on Sat, 9 Dec 2000, Eric Miller wrote:
>> On Sat, Dec 09, 2000 at 06:52:48PM -0800, Jeshua Lacock wrote:
>>
>> OK, I'm back after re-installing my system.
>>
>> It appears that gtty and stty are defined in the header libc.h (which
>> is on my system), however I cannot locate the archive libc.a anywhere
>> on my system. I suspect that this may be the problem, can someone
>> confirm this?
>>
>> Does anyone know where to get libc.a? Would it work if someone
>> emailed it to me (off list, of course)?
>
> You need to get a copy of the static C library for Mac OS X. Possibly
> available in developer's resources or some such. Apparently you only
> have the shared libes ?? (libc.so or libc.o). It's likely much to big
> to mail and it *must* be built for that system. Mine weighs in around
> 2.5 MB.
I successfully installed the Darwin static c library (Libc), and I still
get the gtty & stty errors. Apparently, gtty and stty have been made
obsolete by ioctl().
I quote Cornell's web page:
"______
These subroutines have been made obsolete by the ioctl subroutine.
The stty subroutine sets the state of the terminal associated with the
FileDescriptor parameter. The gtty subroutine retrieves the state of the
terminal associated with FileDescriptor. To set the state of a terminal,
the calling process must have write permission.
Use of the stty subroutine is equivalent to the ioctl (FileDescriptor,
TIOSETP, Buffer) subroutine, while use of the gtty subroutine is
equivalent to the ioctl (FileDescriptor, TIOGETP, Buffer) subroutine.
" ---------
The complete URL is at:
http://nim.cit.cornell.edu/usr/share/man/info/en_US/a_doc_lib/libs/basetrf2/
stty.htm
So should I try and replace the calls myself, or would someone be
willing to help? An ideal simple test module that has this problem it
d.colors.
BTW: pre1 compiled well for me, these are the main modules that
failed. So if we can kick this one in the butt, Grass will be nearly
100% complete on Mac OS X.
Thanks,
Jeshua Lacock
Cartographer/Owner
http://SierraMaps.com
http://3dTopoMaps.com
Telephone: (760) 935-4481
More information about the grass-dev
mailing list