[Insight-users] Link error in Release: TriangleCellTopology
Arnaud Gelas
arnaud_gelas at hms.harvard.edu
Tue Nov 15 09:00:55 EST 2011
I guess the problem has been introduced in
d7b64276cd2f15d336c50df76b275e7a67b80c57, the destructor became
virtual (?). Apart from that I don't see any recent changes on these
files...
Can you try removing the virtual keyword ?
On Nov 15, 2011, at 8:44 AM, Arnaud Gelas wrote:
> My bad, it was already implemented in the corresponding cxx
> file :-/ ...
>
> Which version of Microsoft Visual is it?
>
> On Nov 15, 2011, at 8:24 AM, Dženan Zukić wrote:
>
>> I tried. It gives a different error then:
>>
>> 2>ITKCommon-4.0.lib(itkTriangleCellTopology.obj) : error LNK2005:
>> "public: __cdecl
>> itk::TriangleCellTopology::TriangleCellTopology(void)" (??
>> 0TriangleCellTopology at itk@@QEAA at XZ) already defined in qeUtil.obj
>> 2> Creating library D:/Repo/Spine/Release/Spine.lib and object
>> D:/Repo/Spine/Release/Spine.exp
>> 2>D:\Repo\Spine\Release\Spine.exe : fatal error LNK1169: one or
>> more multiply defined symbols found
>>
>> 2011/11/15 Dženan Zukić <dzenanz at gmail.com>
>> You mean in the source code of TriangleCellTopology?
>>
>> 2011/11/15 Arnaud Gelas <arnaud_gelas at hms.harvard.edu>
>> Hi Dzenan,
>>
>> Can you try changing as follows, please?
>>
>> 39 TriangleCellTopology();
>> 40 virtual ~TriangleCellTopology();
>>
>> by
>>
>> 39 TriangleCellTopology() {}
>> 40 virtual ~TriangleCellTopology() {}
>>
>> My 2 cts,
>> Arnaud
>>
>> On Nov 15, 2011, at 6:45 AM, Dženan Zukić wrote:
>>
>>> Hi all,
>>>
>>> I updated my ITK to commit
>>> dd21441682b47f9e553259d2c2948c71c806bcdd (one revision after RC2).
>>> Now my project no longer compiles in release mode (debug and
>>> relwithdebinfo compile fine). The error is given below. The code
>>> used is:
>>>
>>> #include "itkTriangleCell.h"
>>> //other includes
>>>
>>> typedef MeshType::CellType CellType;
>>> typedef CellType::CellAutoPointer CellAutoPointer;
>>> typedef itk::TriangleCell< CellType > TriangleType;
>>>
>>> //later I use it:
>>> CellAutoPointer tr;
>>> tr.TakeOwnership(new TriangleType);
>>>
>>> Any hints about how to fix it?
>>>
>>> Regards,
>>> Dženan
>>>
>>> error LNK2019: unresolved external symbol "public: virtual __cdecl
>>> itk::TriangleCellTopology::~TriangleCellTopology(void)" (??
>>> 1TriangleCellTopology at itk@@UEAA at XZ) referenced in function "int
>>> `public: __cdecl itk::TriangleCell<class
>>> itk::CellInterface<float,class
>>> itk::CellTraitsInfo<3,float,float,unsigned __int64,unsigned
>>> __int64,unsigned __int64,class itk::Point<float,3>,class
>>> itk::VectorContainer<unsigned __int64,class itk::Point<float,3>
>>> >,class std::set<unsigned __int64,struct std::less<unsigned
>>> __int64>,class std::allocator<unsigned __int64> > > >
>>> >::TriangleCell<class itk::CellInterface<float,class
>>> itk::CellTraitsInfo<3,float,float,unsigned __int64,unsigned
>>> __int64,unsigned __int64,class itk::Point<float,3>,class
>>> itk::VectorContainer<unsigned __int64,class itk::Point<float,3>
>>> >,class std::set<unsigned __int64,struct std::less<unsigned
>>> __int64>,class std::allocator<unsigned __int64> > > >
>>> >(void)'::`1'::dtor$1" (?dtor$1@?0???0?$TriangleCell at V?
>>> $CellInterface at MV?$CellTraitsInfo@$02MM_K_K_KV?$Point at M$02 at itk@@V?
>>> $VectorContainer at _KV?$Point at M$02 at itk@@@2 at V?$set at _KU?
>>> $less at _K@std@@V?$allocator at _K@2@@std@@@itk@@@itk@@@itk@@QEAA at XZ@4HA)
>>>
>>>
>>> <ATT00001.txt>
>>
>>
>>
>
> <ATT00001.txt>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20111115/22ed1b19/attachment-0001.htm>
More information about the Insight-users
mailing list