3
pranav@pranav-Inspiron-1545:~/dependency/tiff-3.8.2$ make
Making all in port
make[1]: Entering directory `/home/pranav/dependency/tiff-3.8.2/port'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/pranav/dependency/tiff-3.8.2/port'
Making all in libtiff
make[1]: Entering directory `/home/pranav/dependency/tiff-3.8.2/libtiff'
make  all-am
make[2]: Entering directory `/home/pranav/dependency/tiff-3.8.2/libtiff'
if /bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -I.     -g -O2 -Wall -W -MT tif_jpeg.lo -MD -MP -MF ".deps/tif_jpeg.Tpo" -c -o tif_jpeg.lo tif_jpeg.c; \
    then mv -f ".deps/tif_jpeg.Tpo" ".deps/tif_jpeg.Plo"; else rm -f ".deps/tif_jpeg.Tpo"; exit 1; fi
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I. -I. -g -O2 -Wall -W -MT tif_jpeg.lo -MD -MP -MF .deps/tif_jpeg.Tpo -c tif_jpeg.c  -fPIC -DPIC -o .libs/tif_jpeg.o
In file included from /usr/local/include/jpeglib.h:27:0,
                 from tif_jpeg.c:87:
/usr/local/include/jmorecfg.h:263:16: error: expected identifier before numeric constant
tif_jpeg.c: In function 'JPEGVSetField':
tif_jpeg.c:1578:8: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
make[2]: *** [tif_jpeg.lo] Error 1
make[2]: Leaving directory `/home/pranav/dependency/tiff-3.8.2/libtiff'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/pranav/dependency/tiff-3.8.2/libtiff'
make: *** [all-recursive] Error 1
4

2 回答 2

17

编辑文件:/usr/local/include/jmorecfg.h

换行:

typedef enum { FALSE = 0 , TRUE = 1 } boolean;

至:

typedef enum { false= 0 , true= 1 } boolean;

然后,使成功。

于 2013-03-26T17:38:20.690 回答
0

我在编译安装 emacs 时遇到了这个错误,我认为这不是一个完美的解决方案,我的解决方案是在更改之前更改名为 jpeglib.h 的源文件:

# include <jpeglib.h>

后:

#define HAVE_BOOLEAN
typedef unsigned char boolean;
# include <jpeglib.h>
#undef HAVE_BOOLEAN

这个解决方案工作正常。

于 2017-01-03T11:09:31.230 回答