[Insight-users] errors building ITK 2.0.1 with VisualStudio 2 005beta 2

Bitter, Ingmar (NIH/CC/DRD) IBitter at cc.nih.gov
Tue Jul 26 13:44:48 EDT 2005


Hi Julien,

Yes, you are right, I noticed those other errors as well, and they were easy
to fix locally, but maybe hard to do portably. I am glad you are taking on
that larger responsibility.

Thanks,
Ingmar

-----Original Message-----
From: Julien Jomier [mailto:jjomier at cs.unc.edu] 
Sent: Tuesday, July 26, 2005 1:36 PM
To: Bitter, Ingmar (NIH/CC/DRD)
Cc: ITK Mailing List; Lorensen, William
Subject: Re: [Insight-users] errors building ITK 2.0.1 with VisualStudio 2
005beta 2

Hi Ingmar,

 > I also worked on it last weekend a little.
 > The Self:: problem was the only one that caused compiler errors.
 > Just deleting it made it possible to build all of the applications
 > that are added if TEST is checked in the CMake options.

This fix works for all the platforms except the native Sun compiler. 
Brad suggested another fix that seems to work on all the platforms. I'm 
checking this in the CVS repository.

I also noticed the problem in VXL with the constant too large. I'll 
check this in as well. There is another issue with sqrtf() in VXL that 
we need to handle.

I hope to have everything working by the end of the week.

BTW, thanks for posting a bug report to Microsoft instead of us ;)

Julien

Bitter, Ingmar (NIH/CC/DRD) wrote:
> Hi Julien,
> 
> I also worked on it last weekend a little.
> The Self:: problem was the only one that caused compiler errors.
> Just deleting it made it possible to build all of the applications that
are
> added if TEST is checked in the CMake options.
> 
> In addition there were lots of warnings that depreciated functions such as
> strcmp were used. Apparently there are not 64bit safe, but I did not find
> out what the recommended replacements are.
> 
> Ingmar
> 
> PS: the cvs version of VTK has a single compile error of having a float
> constant defined too large. Once that is lowered by one (1) all builds
fine.
> 
> -----Original Message-----
> From: Julien Jomier [mailto:jjomier at cs.unc.edu] 
> Sent: Monday, July 25, 2005 6:59 PM
> To: Lorensen, William
> Cc: Bitter, Ingmar (NIH/CC/DRD); ITK Mailing List
> Subject: Re: [Insight-users] errors building ITK 2.0.1 with VisualStudio
> 2005beta 2
> 
> Hi Ingmar,
> 
> I'm working on this issue and I'm almost done.
> I plan to check the fixes in this week. I'll let you know when they are 
> committed.
> 
> Julien
> 
> Lorensen, William E (Research) wrote:
> 
>>No. I think that Julien Jomier has looked into this. There are bugs (if I
> 
> recall) in the beta compiler that we don't want to work around.
> 
>>There was talk about this recently on the insight developers list.
>>
>>Bill
>>
>>--------------------------------
>>>From Julien Jomier
>>
>>Hi All,
>>
>>I'm having an issue while trying to make ITK compile with MSVC 8 (beta 2).
>>
>>The main issue is the different signatures for a function:
>>
>>- in the .h
>>void SetSpacing(const double spacing[ImageDimension])
>>
>>- in the .txx/cxx
>>::SetSpacing(const double spacing[Self::ImageDimension] ) 	
>>
>>The native sun compiler needs the Self:: in order to compile but there 
>>is a bug in the MSVC 8 compiler so that it fails with:
>>"error C2244: 'itk::ImageAdaptor<TImage,TAccessor>::SetSpacing' : unable 
>>to match function definition to an existing declaration"
>>
>>I think we have two options here:
>>1) Drop support for MSVC 8 beta 2 and hope that Microsoft will fix the 
>>bug in the real release (a bug report has been submitted).
>>
>>2) Try to find a workaround (by using a macro?)
>>
>>Let me know what you think,
>>
>>Julien
>>
>>-----Original Message-----
>>From: insight-users-bounces+lorensen=crd.ge.com at itk.org
>>[mailto:insight-users-bounces+lorensen=crd.ge.com at itk.org]On Behalf Of
>>Bitter, Ingmar (NIH/CC/DRD)
>>Sent: Friday, July 22, 2005 1:32 PM
>>To: ITK Mailing List
>>Subject: [Insight-users] errors building ITK 2.0.1 with VisualStudio
>>2005beta 2
>>
>>
>>HI,
>>
>>I was trying to use ITK 2.0.1 that was build with VisualStudio.net inside
> 
> a
> 
>>project that I converted to be used by VisualStudio 2005 beta 2.
>>
>>When including some itk headers it created syntax errors that
>>VisualStudio.net did not think were errors.
>>
>>Is the cvs version of ITK compilable by VisualStudio 2005 beta 2?
>>
>>Ingmar
>>
>>
>>PS: here is the first error message:
>>
>>1>c:\cvs\bezier\libs\itk\code\common\itkVector.txx(62) : error C2244:
>>'itk::Vector<T,NVectorDimension>::operator =' : unable to match function
>>definition to an existing declaration
>>2>c:\cvs\bezier\libs\itk\code\common\itkVector.txx(62) : error C2244:
>>'itk::Vector<T,NVectorDimension>::operator =' : unable to match function
>>definition to an existing declaration
>>1>        definition
>>2>        definition
>>2>        'itk::Vector<T,NVectorDimension>
>>&itk::Vector<T,NVectorDimension>::operator =(const T
>>[itk::Vector<T,NVectorDimension>::Dimension])'
>>1>        'itk::Vector<T,NVectorDimension>
>>&itk::Vector<T,NVectorDimension>::operator =(const T
>>[itk::Vector<T,NVectorDimension>::Dimension])'
>>1>        existing declarations
>>1>        'itk::Vector<T,NVectorDimension>
>>&itk::Vector<T,NVectorDimension>::operator =(const T [Dimension])'
>>1>        'itk::Vector<T,NVectorDimension>
>>&itk::Vector<T,NVectorDimension>::operator =(const
>>itk::Vector<T,NVectorDimension> &)'
>>1>c:\cvs\bezier\libs\itk\code\common\itkPoint.txx(52) : error C2244:
>>'itk::Point<TCoordRep,NPointDimension>::operator =' : unable to match
>>function definition to an existing declaration
>>2>        existing declarations
>>1>        definition
>>2>        'itk::Vector<T,NVectorDimension>
>>&itk::Vector<T,NVectorDimension>::operator =(const T [Dimension])'
>>1>        'itk::Point<TCoordRep,NPointDimension>
>>&itk::Point<TCoordRep,NPointDimension>::operator =(const TCoordRep
>>[itk::Point<TCoordRep,NPointDimension>::PointDimension])'
>>1>        existing declarations
>>2>        'itk::Vector<T,NVectorDimension>
>>&itk::Vector<T,NVectorDimension>::operator =(const
>>itk::Vector<T,NVectorDimension> &)'
>>2>c:\cvs\bezier\libs\itk\code\common\itkPoint.txx(52) : error C2244:
>>'itk::Point<TCoordRep,NPointDimension>::operator =' : unable to match
>>function definition to an existing declaration
>>2>        definition
>>2>        'itk::Point<TCoordRep,NPointDimension>
>>&itk::Point<TCoordRep,NPointDimension>::operator =(const TCoordRep
>>[itk::Point<TCoordRep,NPointDimension>::PointDimension])'
>>2>        existing declarations
>>2>        'itk::Point<TCoordRep,NPointDimension>
>>&itk::Point<TCoordRep,NPointDimension>::operator =(const TCoordRep
>>[PointDimension])'
>>2>        'itk::Point<TCoordRep,NPointDimension>
>>&itk::Point<TCoordRep,NPointDimension>::operator =(const
>>itk::Point<TCoordRep,NPointDimension> &)'
>>1>        'itk::Point<TCoordRep,NPointDimension>
>>&itk::Point<TCoordRep,NPointDimension>::operator =(const TCoordRep
>>[PointDimension])'
>>1>        'itk::Point<TCoordRep,NPointDimension>
>>&itk::Point<TCoordRep,NPointDimension>::operator =(const
>>itk::Point<TCoordRep,NPointDimension> &)'
>>1>c:\cvs\bezier\libs\itk\code\common\itkCovariantVector.txx(45) : error
>>C2244: 'itk::CovariantVector<T,NVectorDimension>::operator =' : unable to
>>match function definition to an existing declaration
>>1>        definition
>>2>c:\cvs\bezier\libs\itk\code\common\itkCovariantVector.txx(45) : error
>>C2244: 'itk::CovariantVector<T,NVectorDimension>::operator =' : unable to
>>match function definition to an existing declaration
>>2>        definition
>>1>        'itk::CovariantVector<T,NVectorDimension>
>>&itk::CovariantVector<T,NVectorDimension>::operator =(const T
>>[itk::CovariantVector<T,NVectorDimension>::Dimension])'
>>2>        'itk::CovariantVector<T,NVectorDimension>
>>&itk::CovariantVector<T,NVectorDimension>::operator =(const T
>>[itk::CovariantVector<T,NVectorDimension>::Dimension])'
>>2>        existing declarations
>>2>        'itk::CovariantVector<T,NVectorDimension>
>>&itk::CovariantVector<T,NVectorDimension>::operator =(const T
> 
> [Dimension])'
> 
>>1>        existing declarations
>>1>        'itk::CovariantVector<T,NVectorDimension>
>>&itk::CovariantVector<T,NVectorDimension>::operator =(const T
> 
> [Dimension])'
> 
>>1>        'itk::CovariantVector<T,NVectorDimension>
>>&itk::CovariantVector<T,NVectorDimension>::operator =(const
>>itk::CovariantVector<T,NVectorDimension> &)'
>>2>        'itk::CovariantVector<T,NVectorDimension>
>>&itk::CovariantVector<T,NVectorDimension>::operator =(const
>>itk::CovariantVector<T,NVectorDimension> &)'
>>
>>_______________________________________________
>>Insight-users mailing list
>>Insight-users at itk.org
>>http://www.itk.org/mailman/listinfo/insight-users
>>_______________________________________________
>>Insight-users mailing list
>>Insight-users at itk.org
>>http://www.itk.org/mailman/listinfo/insight-users
>>
>>
> 
> _______________________________________________
> Insight-users mailing list
> Insight-users at itk.org
> http://www.itk.org/mailman/listinfo/insight-users
> 
> 
_______________________________________________
Insight-users mailing list
Insight-users at itk.org
http://www.itk.org/mailman/listinfo/insight-users


More information about the Insight-users mailing list