[Insight-users] _TIFFerrorHandlerExt already defined in vtktiff.lib

Dženan Zukić dzenanz at gmail.com
Tue Sep 13 04:26:06 EDT 2011


Thanks for the hint Sean.

itk_tiff_mangle.h contains definitions such as these:
#define _TIFFerrorHandler itk__TIFFerrorHandler
#define _TIFFwarningHandler itk__TIFFwarningHandler
and VTK version does the same just with vtk_ prefix.

However, neither files mentions the offending symbols, _TIFFerrorHandlerExtand
_TIFFwarningHandlerExt.

However, the command at the top of those files gives a hint that a
generation of these _mangle.h files is somehow faulty:
/*
This header file mangles all symbols exported from the tiff library.
It is included in all files while building the tiff library.  Due to
namespace pollution, no tiff headers should be included in .h files in
VTK.

The following command was used to obtain the symbol list:
*nm libvtktiff.a |grep " [TRD] "*
*/

Since I know nothing about internals of TIFF library nor about the
generation process of those files, I am pretty crippled when it comes to
solving this issue. Any help will be appreciated.

Regards,
Dženan

On Mon, Sep 12, 2011 at 19:30, Sean McBride <sean at rogue-research.com> wrote:

> On Mon, 12 Sep 2011 16:47:35 +0200, Dženan Zukić said:
>
> >I just updated my ITK4 git repository (I had maybe a month old version
> >previously). ITK itself compiles without issues, but my project gets some
> >linking errors.
> >
> >For Debug there is one error:
> >LINK : fatal error LNK1104: cannot open file
> >'D:\SDK\ITK4build\lib\Debug\ITKgiftiio-4.0.lib'
>
> That looks like a different problem.
>
> >For Release these two errors appear:
> >itktiff-4.0.lib(tif_error.obj) : error LNK2005: _TIFFerrorHandlerExt
> already
> >defined in vtktiff.lib(tif_error.obj)
> >itktiff-4.0.lib(tif_warning.obj) : error LNK2005: _TIFFwarningHandlerExt
> >already defined in vtktiff.lib(tif_warning.obj)
>
> If you check your VTK and ITK source trees for files with the name 'mangle'
> you'll find:
>
> vtk_tiff_mangle.h
> itk_tiff_mangle.h
>
> They use preprocessor magic to change the symbol names of libTIFF functions
> to prevent the exact problem you are seeing.  I suspect something is missing
> from one of both of those files.  If you find it, a patch would be nice!
>
> Cheers,
>
> --
> ____________________________________________________________
> Sean McBride, B. Eng                 sean at rogue-research.com
> Rogue Research                        www.rogue-research.com
> Mac Software Developer              Montréal, Québec, Canada
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20110913/66aa075e/attachment.htm>


More information about the Insight-users mailing list