Compile error
Niels Möller
nisse@lysator.liu.se
11 Dec 2003 09:51:08 +0100
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