[Insight-users] Connecting ITK-VTK : link errors "basic_ostream<..>"
Luis Ibanez
luis.ibanez at kitware.com
Thu, 22 Jan 2004 12:53:07 -0500
Hi Julien,
There are two common cases in which these
link error messages are produced:
A) When you mix compilation modes.
That is, mixing some libraries
compiled for Debug, with libraries
compiled for Release. Please make
sure that you are using a consistent
compilation mode acrros your entire
application.
B) A more esoteric case in which VC++
gets confused depending on the order
in which you place the #include for
<fstream> in your .cxx files.
Our equally esoteric solution to this
case is to make sure that in your .cxx
file, the #include for fstream appears
before any #include for ITK classes.
In both cases, this is unrelated to the
fact of connecting ITK with VTK.
Regards,
Luis
----------------------
Julien Hamaide wrote:
> Hi,
>
>
>
> I’m new to ITK, and I try to make it work with VTK. I’ve finally figured
> out how to connect the two pipelines, but when Iink, I get this problem.
> I’ve already try too much configuration. Now, I’m using Shared Library
> configuration for both VTK and ITK.
>
>
>
> Does anybody as an idea?
>
>
>
> Thanks
>
>
>
> msvcprtd.lib(MSVCP70D.dll) : error LNK2005: "public: class
> std::basic_ostream<char,struct std::char_traits<char> > & __thiscall
> std::basic_ostream<char,struct std::char_traits<char>
> >::operator<<(class std::basic_ostream<char,struct
> std::char_traits<char> > & (__cdecl*)(class
> std::basic_ostream<char,struct std::char_traits<char> > &))"
> (??6?$basic_ostream at DU?$char_traits at D at std at at at std at at QAEAAV01 at P6AAAV01 at AAV01 at at Z at Z)
> already defined in VolToMesh.obj
>
>
>
> msvcprtd.lib(MSVCP70D.dll) : error LNK2005: "public: class
> std::basic_ostream<char,struct std::char_traits<char> > & __thiscall
> std::basic_ostream<char,struct std::char_traits<char>
> >::operator<<(unsigned long)"
> (??6?$basic_ostream at DU?$char_traits at D at std at at at std at at QAEAAV01 at K at Z) already
> defined in VolToMesh.obj
>
>
>
> msvcprtd.lib(MSVCP70D.dll) : error LNK2005: "class
> std::basic_ostream<char,struct std::char_traits<char> > & __cdecl
> std::operator<<(class std::basic_ostream<char,struct
> std::char_traits<char> > &,char const *)"
> (??6std at at YAAAV?$basic_ostream at DU?$char_traits at D at std at at at 0 at AAV10 at PBD at Z)
> already defined in VolToMesh.obj
>
>
>
> msvcprtd.lib(MSVCP70D.dll) : error LNK2005: "class
> std::basic_ostream<char,struct std::char_traits<char> > & __cdecl
> std::endl(class std::basic_ostream<char,struct std::char_traits<char> >
> &)" (?endl at std at at YAAAV?$basic_ostream at DU?$char_traits at D at std at at at 1 at AAV21 at at Z)
> already defined in VolToMesh.obj
>
> Debug/VolToMesh.exe : fatal error LNK1169: one or more multiply defined
> symbols found
>
>
>
> Julien Hamaide
>
>
>
> Tcts Lab - Multitel Asbl.
>
> Faculte Polytechnique de Mons
>
> Parc Initialis - Avenue Nicolas Copernic,1
>
> 7000 - Mons
>
> Belgium
>
> http://tcts.fpms.ac.be
>
>
>
> tel +32 65 37 47 43
>
> email : julien.hamaide at tcts.fpms.ac.be
>
>
>