Sloan Bowman smileyq@nashlinux.com writes:
When I try to compile lsh-1.4.3 under Solaris 8 (Sparc) I receive the following error. I have tried to figure this out to no end but haven't been able to get it working properly. Thanks for the help.
Making all in . make[1]: Entering directory `/export/spare/local/src/lsh-1.4.3/src' if gcc -DHAVE_CONFIG_H -I. -I/export/spare/local/src/lsh-1.4.3/src -I.. -I/export/spare/local/src/lsh-1.4.3/src -DLSH -D_GNU_SOURCE -I -g -O2 -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wpointer-arith -Wbad-function-cast -Wnested-externs -MT abstract_io.o -MD -MP -MF ".deps/abstract_io.Tpo" \ -c -o abstract_io.o `test -f 'abstract_io.c' || echo '/export/spare/local/src/lsh-1.4.3/src/'`abstract_io.c; \ then mv ".deps/abstract_io.Tpo" ".deps/abstract_io.Po"; \ else rm -f ".deps/abstract_io.Tpo"; exit 1; \ fi In file included from lsh.h:27, from exception.h:27, from abstract_io.h:29, from abstract_io.c:26: lsh_types.h:59:3: #error No suitable type found to use for UINT32 lsh_types.h:67:3: #error No suitable type found to use for UINT16
Something has gone wrong druing configure. config.h is supposed to define SIZEOF_INT, SIZEOF_LONG and SIZEOF_SHORT, and then lsh_types.h use these macros to figure out what type to use for 16- and 32-bit numbers (the preprocessor doesn't know sizeof, so one can't use sizeof in preprocessor directives).
Probably your config.h defines all the SIZEOF_*-macros to zero. Check config.log to see what went wrong with the tests for int, short and long.
(For those using lsh-1.5, I should point out that this is done differently there).
Regards, /Niels