2003.10.07 11:28 "[Tiff] [ANNOUNCE]: libtiff 3.6.0 finally released", by Andrey Kiselev

2003.10.09 03:30 "[Tiff] [ANNOUNCE]: libtiff 3.6.0 finally released", by Ashley Dreier

Hi Andrey.

Just one minor compilation problem I've had with the new release. If building in a sub-directory (i.e. for different OS), then the compiler is unable to find the 'libtiff/port.h' file. This is because the 'tools/Makefile' file doesn't include a reference to the directory in which the 'port.h' file was created (i.e. in the sub-directory).

e.g.

        cd tiff-v3.6.0
  mkdir obj
       cd obj
  ../configure
    --> port.h is created in new libtiff directory (i.e. under the
  'obj' directory)
        make
    ...

/opt/sfw/bin/gcc -c -g -O -I. -I../../../tools -I../../../libtiff ../../../tools/tiffset.c
In file included from ../../../tools/tiffset.c:48:
../../../libtiff/tiffiop.h:38:18: port.h: No such file or directory
In file included from ../../../libtiff/tiffiop.h:45,
                 from ../../../tools/tiffset.c:48:
../../../libtiff/tif_dir.h:39: syntax error before "u_long"
../../../libtiff/tif_dir.h:39: warning: no semicolon at end of struct or union
../../../libtiff/tif_dir.h:125: syntax error before '}' token
../../../libtiff/tif_dir.h:125: warning: data definition has no type or storage class
In file included from ../../../tools/tiffset.c:48:
../../../libtiff/tiffiop.h:98: syntax error before "TIFFDirectory"
../../../libtiff/tiffiop.h:98: warning: no semicolon at end of struct or union
../../../libtiff/tiffiop.h:161: syntax error before '}' token
../../../libtiff/tiffiop.h:238: syntax error before "_TIFFwarningHandler"
../../../libtiff/tiffiop.h:238: warning: data definition has no type or storage class
../../../libtiff/tiffiop.h:239: syntax error before "_TIFFerrorHandler"
../../../libtiff/tiffiop.h:239: warning: data definition has no type or storage class
make[1]: *** [tiffset.o] Error 1
make[1]: Leaving directory `/home/ajd/proj/safetcam/current/hymod/src/tiff-v3.6.0/obj/solaris/tools'
make: *** [all] Error 2

If the compile line however is:

/opt/sfw/bin/gcc -c -g -O -I. -I../libtiff -I../../../tools -I../../../libtiff ../../../tools/tiffset.c

then it builds okay (under solaris, linux and a cross-development linux system at least).

The following 'diff -u' output seems to fix the problem:

--- tools/Makefile.in-dist      2003-10-09 13:24:55.000000000 +1000
+++ tools/Makefile.in   2003-10-09 13:25:02.000000000 +1000
@@ -45,7 +45,7 @@
 #
 COPTS  = @GCOPTS@
 OPTIMIZER=@OPTIMIZER@
-IPATH  = -I. -I${SRCDIR} -I${LIBDIR}
+IPATH  = -I. -I../libtiff -I${SRCDIR} -I${LIBDIR}
 CFLAGS = @ENVOPTS@ ${COPTS} ${OPTIMIZER} ${IPATH}
 #
 TIFFLIB        = ${DEPTH}/libtiff/libtiff.@DSOSUF@

Regards,

Ashley.

Ashley J. Dreier.                     Email: Ashley.Dreier@csiro.au
CSIRO Manufacturing and Infrastructure Tech, Phone: +61 3 9662 7799
Locked Bag No. 9,                            Fax:   +61 3 9662 7851
Preston, Vic, 3072, Australia.
URL: http://www.msa.cmst.csiro.au/cmst/automation/staff/ajd