From matt.mccormick at kitware.com Mon Apr 3 18:52:02 2017 From: matt.mccormick at kitware.com (Matt McCormick) Date: Mon, 3 Apr 2017 18:52:02 -0400 Subject: [ITK-dev] Maintenance of the Insight Toolkit Message-ID: Hi folks, As United States government is re-examines the value of its funding initiatives, we have an opportunity to explain the value of the Insight Toolkit (ITK) project, and its associated open science community. The National Library of Medicine (NLM) has driven open science and reproducible research long before the recent surge in popularity of the movement. Not only did the NLM start the Insight Toolkit project in 1999, but it has continuously enabled it to thrive by supporting community development, maintenance, and algorithmic and technological advances to this day. Open science needs active communities, supported communities, standards, open-source tools, strong ties will commercial / clinical efforts, high-quality practices, transparency, and more - and those are exactly the strengths of our community's toolkits, applications, and projects. We should to encourage the NLM (NIH, DHHS, US Government) to continue to prioritize these efforts via their funding. To emphasize the impact of this community, please share your story. We would like to describe outstanding projects and efforts that use the Insight Toolkit. If you have stories, descriptions, or statistics of the impact of ITK or projects that leverage it, they justify future investments in this area. If you can help, please send a description of your project or your relationship with the Insight Toolkit for research, industry, or education to by Tuesday, April 11th. For example, Dear US National Library of Medicine, Thanks you for funding the Insight Toolkit project and supporting its maintenance and community. For the past two years, the documentation, software, and community have been a valuable resource for my research on neurocognitive imaging. Sincerely, Alice Insight, PhD Reproducible University Thank you, Matt From jonathan.lefman at intel.com Wed Apr 5 16:57:57 2017 From: jonathan.lefman at intel.com (Lefman, Jonathan) Date: Wed, 5 Apr 2017 20:57:57 +0000 Subject: [ITK-dev] Build errors using a different C and CXX compiler Message-ID: Hi all, I am attempting to build ITK from source (have tried using v4.11.0 and master) using a different CXX compiler. To start, I do not have an issue when I utilize the default compiler (gcc) as much compiler. This works fine; tests are successful. The error I encounter on both Ubuntu and Centos systems is the same. It looks like this on the make output: [ 58%] Building CXX object Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver.dir/itkRayCastInterpolateImageFunctionTest.cxx.o /src/ITK/Modules/Core/ImageFunction/include/itkRayCastInterpolateImageFunction.hxx(38): error: member "::RayCastHelper::InputImageDimension [with TInputImage=itk::Image, TCoordRep=double]" was referenced but not defined itkStaticConstMacro(InputImageDimension, unsigned int, ^ compilation aborted for /src/ITK/Modules/Core/ImageFunction/test/itkRayCastInterpolateImageFunctionTest.cxx (code 2) make[2]: *** [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver.dir/itkRayCastInterpolateImageFunctionTest.cxx.o] Error 2 make[1]: *** [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver.dir/all] Error 2 make: *** [all] Error 2 My cmake setup looks like this: CC=/intel/bin/icc CXX=/intel/bin/icc cmake -DCMAKE_CXX_COMPILER:FILEPATH=$CXX -DCMAKE_C_COMPILER:FILEPATH=$CC -DModule_PerformanceBenchmarking:BOOL=ON .. Example generated CXX_FLAGS are from: ./Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver.dir/flags.make # compile CXX with /intel/bin/icc CXX_FLAGS = -w2 -wd1268 -wd981 -wd383 -wd1418 -wd1419 -wd2259 -wd1572 -wd424 -Wdisabled-optimization -Wextra -Wformat=2 -Winvalid-pch -Wpointer-arith -Wshadow -Wunused -Wwrite-strings -Wno-deprecated -Wno-invalid-offsetof -Woverloaded-virtual -O3 -DNDEBUG -fPIE -I/src/ITK/Modules/Core/ImageAdaptors/include -I/src/ITK/build_icc/Modules/ThirdParty/KWIML/src -I/src/ITK/Modules/ThirdParty/KWIML/src -I/src/ITK/build_icc/Modules/ThirdParty/KWSys/src -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/v3p/netlib -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/vcl -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/v3p/netlib -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/vcl -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/core -I/src/ITK/Modules/ThirdParty/VNLInstantiation/include -I/src/ITK/build_icc/Modules/Core/Common -I/src/ITK/Modules/Core/Common/include -I/src/ITK/build_icc/Modules/ThirdParty/Netlib -I/src/ITK/Modules/Numerics/Statistics/include -I/src/ITK/Modules/Filtering/ImageFilterBase/include -I/src/ITK/Modules/Core/Transform/include -I/src/ITK/Modules/Core/ImageFunction/include -I/src/ITK/Modules/ThirdParty/DoubleConversion/src/double-conversion -I/src/ITK/build_icc/Modules/ThirdParty/DoubleConversion/src/double-conversion -I/src/ITK/Modules/IO/BMP/include -I/src/ITK/build_icc/Modules/ThirdParty/Expat/src/expat -I/src/ITK/Modules/ThirdParty/Expat/src/expat -I/src/ITK/build_icc/Modules/ThirdParty/ZLIB/src -I/src/ITK/Modules/ThirdParty/ZLIB/src -I/src/ITK/build_icc/Modules/ThirdParty/GDCM -I/src/ITK/build_icc/Modules/ThirdParty/GDCM/src/gdcm/Source/Common -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MediaStorageAndFileFormat -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataDictionary -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/Common -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/InformationObjectDefinition -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MessageExchangeDefinition -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataStructureAndEncodingDefinition -I/src/ITK/Modules/IO/GDCM/include -I/src/ITK/Modules/IO/GIPL/include -I/src/ITK/build_icc/Modules/IO/ImageBase -I/src/ITK/Modules/IO/ImageBase/include -I/src/ITK/Modules/IO/JPEG/include -I/src/ITK/build_icc/Modules/ThirdParty/MetaIO/src/MetaIO/src -I/src/ITK/Modules/ThirdParty/MetaIO/src/MetaIO/src -I/src/ITK/Modules/IO/Meta/include -I/src/ITK/Modules/IO/NIFTI/include -I/src/ITK/Modules/IO/NRRD/include -I/src/ITK/Modules/IO/PNG/include -I/src/ITK/Modules/IO/TIFF/include -I/src/ITK/Modules/IO/VTK/include -I/src/ITK/Modules/Core/TestKernel/include -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl Does anyone have a pointer to see where this error comes from? Thank you. -Jon -------------- next part -------------- An HTML attachment was scrubbed... URL: From matt.mccormick at kitware.com Wed Apr 5 17:16:51 2017 From: matt.mccormick at kitware.com (Matt McCormick) Date: Wed, 5 Apr 2017 17:16:51 -0400 Subject: [ITK-dev] Build errors using a different C and CXX compiler In-Reply-To: References: Message-ID: Hi Jon, It does not look like we have working builds of ICC on the dashboard [1]. As they say, if it not tested, it is broken. There are two x86_64 ICC builds, but they either have a build system issue, or ITK needs to be updated to use this compiler. What version of the compiler is it? Thanks, Matt [1] https://open.cdash.org/index.php?project=Insight On Wed, Apr 5, 2017 at 4:57 PM, Lefman, Jonathan wrote: > Hi all, > > > > I am attempting to build ITK from source (have tried using v4.11.0 and > master) using a different CXX compiler. To start, I do not have an issue > when I utilize the default compiler (gcc) as much compiler. This works fine; > tests are successful. > > > > The error I encounter on both Ubuntu and Centos systems is the same. It > looks like this on the make output: > > [ 58%] Building CXX object > Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver.dir/itkRayCastInterpolateImageFunctionTest.cxx.o > > /src/ITK/Modules/Core/ImageFunction/include/itkRayCastInterpolateImageFunction.hxx(38): > error: member "::RayCastHelper TCoordRep>::InputImageDimension [with TInputImage=itk::Image 3U>, TCoordRep=double]" was referenced but not defined > > itkStaticConstMacro(InputImageDimension, unsigned int, > > ^ > > > > compilation aborted for > /src/ITK/Modules/Core/ImageFunction/test/itkRayCastInterpolateImageFunctionTest.cxx > (code 2) > > make[2]: *** > [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver.dir/itkRayCastInterpolateImageFunctionTest.cxx.o] > Error 2 > > make[1]: *** > [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver.dir/all] > Error 2 > > make: *** [all] Error 2 > > > > My cmake setup looks like this: > > CC=/intel/bin/icc CXX=/intel/bin/icc cmake > -DCMAKE_CXX_COMPILER:FILEPATH=$CXX -DCMAKE_C_COMPILER:FILEPATH=$CC > -DModule_PerformanceBenchmarking:BOOL=ON .. > > > > Example generated CXX_FLAGS are from: > ./Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver.dir/flags.make > > # compile CXX with /intel/bin/icc > > CXX_FLAGS = -w2 -wd1268 -wd981 -wd383 -wd1418 -wd1419 -wd2259 -wd1572 > -wd424 -Wdisabled-optimization -Wextra -Wformat=2 -Winvalid-pch > -Wpointer-arith -Wshadow -Wunused -Wwrite-strings -Wno-deprecated > -Wno-invalid-offsetof -Woverloaded-virtual -O3 -DNDEBUG -fPIE > -I/src/ITK/Modules/Core/ImageAdaptors/include > -I/src/ITK/build_icc/Modules/ThirdParty/KWIML/src > -I/src/ITK/Modules/ThirdParty/KWIML/src > -I/src/ITK/build_icc/Modules/ThirdParty/KWSys/src > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/v3p/netlib > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/vcl > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core > -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/v3p/netlib > -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/vcl > -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/core > -I/src/ITK/Modules/ThirdParty/VNLInstantiation/include > -I/src/ITK/build_icc/Modules/Core/Common > -I/src/ITK/Modules/Core/Common/include > -I/src/ITK/build_icc/Modules/ThirdParty/Netlib > -I/src/ITK/Modules/Numerics/Statistics/include > -I/src/ITK/Modules/Filtering/ImageFilterBase/include > -I/src/ITK/Modules/Core/Transform/include > -I/src/ITK/Modules/Core/ImageFunction/include > -I/src/ITK/Modules/ThirdParty/DoubleConversion/src/double-conversion > -I/src/ITK/build_icc/Modules/ThirdParty/DoubleConversion/src/double-conversion > -I/src/ITK/Modules/IO/BMP/include > -I/src/ITK/build_icc/Modules/ThirdParty/Expat/src/expat > -I/src/ITK/Modules/ThirdParty/Expat/src/expat > -I/src/ITK/build_icc/Modules/ThirdParty/ZLIB/src > -I/src/ITK/Modules/ThirdParty/ZLIB/src > -I/src/ITK/build_icc/Modules/ThirdParty/GDCM > -I/src/ITK/build_icc/Modules/ThirdParty/GDCM/src/gdcm/Source/Common > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MediaStorageAndFileFormat > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataDictionary > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/Common > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/InformationObjectDefinition > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MessageExchangeDefinition > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataStructureAndEncodingDefinition > -I/src/ITK/Modules/IO/GDCM/include -I/src/ITK/Modules/IO/GIPL/include > -I/src/ITK/build_icc/Modules/IO/ImageBase > -I/src/ITK/Modules/IO/ImageBase/include -I/src/ITK/Modules/IO/JPEG/include > -I/src/ITK/build_icc/Modules/ThirdParty/MetaIO/src/MetaIO/src > -I/src/ITK/Modules/ThirdParty/MetaIO/src/MetaIO/src > -I/src/ITK/Modules/IO/Meta/include -I/src/ITK/Modules/IO/NIFTI/include > -I/src/ITK/Modules/IO/NRRD/include -I/src/ITK/Modules/IO/PNG/include > -I/src/ITK/Modules/IO/TIFF/include -I/src/ITK/Modules/IO/VTK/include > -I/src/ITK/Modules/Core/TestKernel/include > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl > > > > Does anyone have a pointer to see where this error comes from? Thank you. > > > > -Jon > > From jonathan.lefman at intel.com Thu Apr 6 15:35:12 2017 From: jonathan.lefman at intel.com (Lefman, Jonathan) Date: Thu, 6 Apr 2017 19:35:12 +0000 Subject: [ITK-dev] Build errors using a different C and CXX compiler In-Reply-To: References: Message-ID: Matt, I just met with a technical lead for the Intel compiler front-end group to review this issue. I may have uncovered a bug in the front-end logic. They are investigating to dig into the reason for this anomaly. When I receive their analysis, I will report back what the next steps are. -Jon -----Original Message----- From: Matt McCormick [mailto:matt.mccormick at kitware.com] Sent: Wednesday, April 5, 2017 5:17 PM To: Lefman, Jonathan Cc: insight-developers at itk.org Subject: Re: Build errors using a different C and CXX compiler Hi Jon, It does not look like we have working builds of ICC on the dashboard [1]. As they say, if it not tested, it is broken. There are two x86_64 ICC builds, but they either have a build system issue, or ITK needs to be updated to use this compiler. What version of the compiler is it? Thanks, Matt [1] https://open.cdash.org/index.php?project=Insight On Wed, Apr 5, 2017 at 4:57 PM, Lefman, Jonathan wrote: > Hi all, > > > > I am attempting to build ITK from source (have tried using v4.11.0 and > master) using a different CXX compiler. To start, I do not have an > issue when I utilize the default compiler (gcc) as much compiler. This > works fine; tests are successful. > > > > The error I encounter on both Ubuntu and Centos systems is the same. > It looks like this on the make output: > > [ 58%] Building CXX object > Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver. > dir/itkRayCastInterpolateImageFunctionTest.cxx.o > > /src/ITK/Modules/Core/ImageFunction/include/itkRayCastInterpolateImageFunction.hxx(38): > error: member "::RayCastHelper TCoordRep>::InputImageDimension [with TInputImage=itk::Image TCoordRep>char, > 3U>, TCoordRep=double]" was referenced but not defined > > itkStaticConstMacro(InputImageDimension, unsigned int, > > ^ > > > > compilation aborted for > /src/ITK/Modules/Core/ImageFunction/test/itkRayCastInterpolateImageFun > ctionTest.cxx > (code 2) > > make[2]: *** > [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver > .dir/itkRayCastInterpolateImageFunctionTest.cxx.o] > Error 2 > > make[1]: *** > [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver > .dir/all] > Error 2 > > make: *** [all] Error 2 > > > > My cmake setup looks like this: > > CC=/intel/bin/icc CXX=/intel/bin/icc cmake > -DCMAKE_CXX_COMPILER:FILEPATH=$CXX -DCMAKE_C_COMPILER:FILEPATH=$CC > -DModule_PerformanceBenchmarking:BOOL=ON .. > > > > Example generated CXX_FLAGS are from: > ./Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDrive > r.dir/flags.make > > # compile CXX with /intel/bin/icc > > CXX_FLAGS = -w2 -wd1268 -wd981 -wd383 -wd1418 -wd1419 -wd2259 -wd1572 > -wd424 -Wdisabled-optimization -Wextra -Wformat=2 -Winvalid-pch > -Wpointer-arith -Wshadow -Wunused -Wwrite-strings -Wno-deprecated > -Wno-invalid-offsetof -Woverloaded-virtual -O3 -DNDEBUG -fPIE > -I/src/ITK/Modules/Core/ImageAdaptors/include > -I/src/ITK/build_icc/Modules/ThirdParty/KWIML/src > -I/src/ITK/Modules/ThirdParty/KWIML/src > -I/src/ITK/build_icc/Modules/ThirdParty/KWSys/src > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/v3p/netlib > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/vcl > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core > -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/v3p/netlib > -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/vcl > -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/core > -I/src/ITK/Modules/ThirdParty/VNLInstantiation/include > -I/src/ITK/build_icc/Modules/Core/Common > -I/src/ITK/Modules/Core/Common/include > -I/src/ITK/build_icc/Modules/ThirdParty/Netlib > -I/src/ITK/Modules/Numerics/Statistics/include > -I/src/ITK/Modules/Filtering/ImageFilterBase/include > -I/src/ITK/Modules/Core/Transform/include > -I/src/ITK/Modules/Core/ImageFunction/include > -I/src/ITK/Modules/ThirdParty/DoubleConversion/src/double-conversion > -I/src/ITK/build_icc/Modules/ThirdParty/DoubleConversion/src/double-co > nversion > -I/src/ITK/Modules/IO/BMP/include > -I/src/ITK/build_icc/Modules/ThirdParty/Expat/src/expat > -I/src/ITK/Modules/ThirdParty/Expat/src/expat > -I/src/ITK/build_icc/Modules/ThirdParty/ZLIB/src > -I/src/ITK/Modules/ThirdParty/ZLIB/src > -I/src/ITK/build_icc/Modules/ThirdParty/GDCM > -I/src/ITK/build_icc/Modules/ThirdParty/GDCM/src/gdcm/Source/Common > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MediaStorageAndFile > Format > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataDictionary > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/Common > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/InformationObjectDe > finition > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MessageExchangeDefi > nition > -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataStructureAndEnc > odingDefinition -I/src/ITK/Modules/IO/GDCM/include > -I/src/ITK/Modules/IO/GIPL/include > -I/src/ITK/build_icc/Modules/IO/ImageBase > -I/src/ITK/Modules/IO/ImageBase/include > -I/src/ITK/Modules/IO/JPEG/include > -I/src/ITK/build_icc/Modules/ThirdParty/MetaIO/src/MetaIO/src > -I/src/ITK/Modules/ThirdParty/MetaIO/src/MetaIO/src > -I/src/ITK/Modules/IO/Meta/include -I/src/ITK/Modules/IO/NIFTI/include > -I/src/ITK/Modules/IO/NRRD/include -I/src/ITK/Modules/IO/PNG/include > -I/src/ITK/Modules/IO/TIFF/include -I/src/ITK/Modules/IO/VTK/include > -I/src/ITK/Modules/Core/TestKernel/include > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo > -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl > > > > Does anyone have a pointer to see where this error comes from? Thank you. > > > > -Jon > > From matt.mccormick at kitware.com Thu Apr 6 15:40:07 2017 From: matt.mccormick at kitware.com (Matt McCormick) Date: Thu, 6 Apr 2017 15:40:07 -0400 Subject: [ITK-dev] Build errors using a different C and CXX compiler In-Reply-To: References: Message-ID: Excellent, thanks, Jon! On Thu, Apr 6, 2017 at 3:35 PM, Lefman, Jonathan wrote: > Matt, > > I just met with a technical lead for the Intel compiler front-end group to review this issue. I may have uncovered a bug in the front-end logic. They are investigating to dig into the reason for this anomaly. When I receive their analysis, I will report back what the next steps are. > > -Jon > > -----Original Message----- > From: Matt McCormick [mailto:matt.mccormick at kitware.com] > Sent: Wednesday, April 5, 2017 5:17 PM > To: Lefman, Jonathan > Cc: insight-developers at itk.org > Subject: Re: Build errors using a different C and CXX compiler > > Hi Jon, > > It does not look like we have working builds of ICC on the dashboard [1]. As they say, if it not tested, it is broken. There are two x86_64 ICC builds, but they either have a build system issue, or ITK needs to be updated to use this compiler. What version of the compiler is it? > > Thanks, > Matt > > [1] https://open.cdash.org/index.php?project=Insight > > On Wed, Apr 5, 2017 at 4:57 PM, Lefman, Jonathan wrote: >> Hi all, >> >> >> >> I am attempting to build ITK from source (have tried using v4.11.0 and >> master) using a different CXX compiler. To start, I do not have an >> issue when I utilize the default compiler (gcc) as much compiler. This >> works fine; tests are successful. >> >> >> >> The error I encounter on both Ubuntu and Centos systems is the same. >> It looks like this on the make output: >> >> [ 58%] Building CXX object >> Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver. >> dir/itkRayCastInterpolateImageFunctionTest.cxx.o >> >> /src/ITK/Modules/Core/ImageFunction/include/itkRayCastInterpolateImageFunction.hxx(38): >> error: member "::RayCastHelper> TCoordRep>::InputImageDimension [with TInputImage=itk::Image> TCoordRep>char, >> 3U>, TCoordRep=double]" was referenced but not defined >> >> itkStaticConstMacro(InputImageDimension, unsigned int, >> >> ^ >> >> >> >> compilation aborted for >> /src/ITK/Modules/Core/ImageFunction/test/itkRayCastInterpolateImageFun >> ctionTest.cxx >> (code 2) >> >> make[2]: *** >> [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver >> .dir/itkRayCastInterpolateImageFunctionTest.cxx.o] >> Error 2 >> >> make[1]: *** >> [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver >> .dir/all] >> Error 2 >> >> make: *** [all] Error 2 >> >> >> >> My cmake setup looks like this: >> >> CC=/intel/bin/icc CXX=/intel/bin/icc cmake >> -DCMAKE_CXX_COMPILER:FILEPATH=$CXX -DCMAKE_C_COMPILER:FILEPATH=$CC >> -DModule_PerformanceBenchmarking:BOOL=ON .. >> >> >> >> Example generated CXX_FLAGS are from: >> ./Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDrive >> r.dir/flags.make >> >> # compile CXX with /intel/bin/icc >> >> CXX_FLAGS = -w2 -wd1268 -wd981 -wd383 -wd1418 -wd1419 -wd2259 -wd1572 >> -wd424 -Wdisabled-optimization -Wextra -Wformat=2 -Winvalid-pch >> -Wpointer-arith -Wshadow -Wunused -Wwrite-strings -Wno-deprecated >> -Wno-invalid-offsetof -Woverloaded-virtual -O3 -DNDEBUG -fPIE >> -I/src/ITK/Modules/Core/ImageAdaptors/include >> -I/src/ITK/build_icc/Modules/ThirdParty/KWIML/src >> -I/src/ITK/Modules/ThirdParty/KWIML/src >> -I/src/ITK/build_icc/Modules/ThirdParty/KWSys/src >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/v3p/netlib >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/vcl >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core >> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/v3p/netlib >> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/vcl >> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/core >> -I/src/ITK/Modules/ThirdParty/VNLInstantiation/include >> -I/src/ITK/build_icc/Modules/Core/Common >> -I/src/ITK/Modules/Core/Common/include >> -I/src/ITK/build_icc/Modules/ThirdParty/Netlib >> -I/src/ITK/Modules/Numerics/Statistics/include >> -I/src/ITK/Modules/Filtering/ImageFilterBase/include >> -I/src/ITK/Modules/Core/Transform/include >> -I/src/ITK/Modules/Core/ImageFunction/include >> -I/src/ITK/Modules/ThirdParty/DoubleConversion/src/double-conversion >> -I/src/ITK/build_icc/Modules/ThirdParty/DoubleConversion/src/double-co >> nversion >> -I/src/ITK/Modules/IO/BMP/include >> -I/src/ITK/build_icc/Modules/ThirdParty/Expat/src/expat >> -I/src/ITK/Modules/ThirdParty/Expat/src/expat >> -I/src/ITK/build_icc/Modules/ThirdParty/ZLIB/src >> -I/src/ITK/Modules/ThirdParty/ZLIB/src >> -I/src/ITK/build_icc/Modules/ThirdParty/GDCM >> -I/src/ITK/build_icc/Modules/ThirdParty/GDCM/src/gdcm/Source/Common >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MediaStorageAndFile >> Format >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataDictionary >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/Common >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/InformationObjectDe >> finition >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MessageExchangeDefi >> nition >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataStructureAndEnc >> odingDefinition -I/src/ITK/Modules/IO/GDCM/include >> -I/src/ITK/Modules/IO/GIPL/include >> -I/src/ITK/build_icc/Modules/IO/ImageBase >> -I/src/ITK/Modules/IO/ImageBase/include >> -I/src/ITK/Modules/IO/JPEG/include >> -I/src/ITK/build_icc/Modules/ThirdParty/MetaIO/src/MetaIO/src >> -I/src/ITK/Modules/ThirdParty/MetaIO/src/MetaIO/src >> -I/src/ITK/Modules/IO/Meta/include -I/src/ITK/Modules/IO/NIFTI/include >> -I/src/ITK/Modules/IO/NRRD/include -I/src/ITK/Modules/IO/PNG/include >> -I/src/ITK/Modules/IO/TIFF/include -I/src/ITK/Modules/IO/VTK/include >> -I/src/ITK/Modules/Core/TestKernel/include >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl >> >> >> >> Does anyone have a pointer to see where this error comes from? Thank you. >> >> >> >> -Jon >> >> From matt.mccormick at kitware.com Fri Apr 7 12:48:20 2017 From: matt.mccormick at kitware.com (Matt McCormick) Date: Fri, 7 Apr 2017 12:48:20 -0400 Subject: [ITK-dev] Intel performance meeting notes Message-ID: Hi folks, Here are some links collected at the meeting today on performance optimization with Intel hardware: https://itk.org/Wiki/ITK/PerformanceOptimization#2017-04-07 If anyone else would like to join, we will continue the discussion on the weekly video chat: https://calendar.google.com/calendar/embed?src=jhm9h5t9un1gbm21jktej2qvh0%40group.calendar.google.com&ctz=America/New_York Thanks, Matt From jonathan.lefman at intel.com Fri Apr 7 13:49:29 2017 From: jonathan.lefman at intel.com (Lefman, Jonathan) Date: Fri, 7 Apr 2017 17:49:29 +0000 Subject: [ITK-dev] Build errors using a different C and CXX compiler In-Reply-To: References: Message-ID: There is a confirmed bug in the latest release of the Intel Compiler. Any code which compiles in gcc should compile under icc. There is a workaround listed in the last comment here: https://software.intel.com/en-us/comment/1902247. I will notify once a fix has been released. I will try to find out if we can include ITK in regular build tests for ICC development. -Jon -----Original Message----- From: Matt McCormick [mailto:matt.mccormick at kitware.com] Sent: Thursday, April 6, 2017 3:40 PM To: Lefman, Jonathan Cc: insight-developers at itk.org Subject: Re: Build errors using a different C and CXX compiler Excellent, thanks, Jon! On Thu, Apr 6, 2017 at 3:35 PM, Lefman, Jonathan wrote: > Matt, > > I just met with a technical lead for the Intel compiler front-end group to review this issue. I may have uncovered a bug in the front-end logic. They are investigating to dig into the reason for this anomaly. When I receive their analysis, I will report back what the next steps are. > > -Jon > > -----Original Message----- > From: Matt McCormick [mailto:matt.mccormick at kitware.com] > Sent: Wednesday, April 5, 2017 5:17 PM > To: Lefman, Jonathan > Cc: insight-developers at itk.org > Subject: Re: Build errors using a different C and CXX compiler > > Hi Jon, > > It does not look like we have working builds of ICC on the dashboard [1]. As they say, if it not tested, it is broken. There are two x86_64 ICC builds, but they either have a build system issue, or ITK needs to be updated to use this compiler. What version of the compiler is it? > > Thanks, > Matt > > [1] https://open.cdash.org/index.php?project=Insight > > On Wed, Apr 5, 2017 at 4:57 PM, Lefman, Jonathan wrote: >> Hi all, >> >> >> >> I am attempting to build ITK from source (have tried using v4.11.0 >> and >> master) using a different CXX compiler. To start, I do not have an >> issue when I utilize the default compiler (gcc) as much compiler. >> This works fine; tests are successful. >> >> >> >> The error I encounter on both Ubuntu and Centos systems is the same. >> It looks like this on the make output: >> >> [ 58%] Building CXX object >> Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver. >> dir/itkRayCastInterpolateImageFunctionTest.cxx.o >> >> /src/ITK/Modules/Core/ImageFunction/include/itkRayCastInterpolateImageFunction.hxx(38): >> error: member "::RayCastHelper> TCoordRep>::InputImageDimension [with TInputImage=itk::Image> TCoordRep>char, >> 3U>, TCoordRep=double]" was referenced but not defined >> >> itkStaticConstMacro(InputImageDimension, unsigned int, >> >> ^ >> >> >> >> compilation aborted for >> /src/ITK/Modules/Core/ImageFunction/test/itkRayCastInterpolateImageFu >> n >> ctionTest.cxx >> (code 2) >> >> make[2]: *** >> [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDrive >> r .dir/itkRayCastInterpolateImageFunctionTest.cxx.o] >> Error 2 >> >> make[1]: *** >> [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDrive >> r >> .dir/all] >> Error 2 >> >> make: *** [all] Error 2 >> >> >> >> My cmake setup looks like this: >> >> CC=/intel/bin/icc CXX=/intel/bin/icc cmake >> -DCMAKE_CXX_COMPILER:FILEPATH=$CXX -DCMAKE_C_COMPILER:FILEPATH=$CC >> -DModule_PerformanceBenchmarking:BOOL=ON .. >> >> >> >> Example generated CXX_FLAGS are from: >> ./Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriv >> e >> r.dir/flags.make >> >> # compile CXX with /intel/bin/icc >> >> CXX_FLAGS = -w2 -wd1268 -wd981 -wd383 -wd1418 -wd1419 -wd2259 -wd1572 >> -wd424 -Wdisabled-optimization -Wextra -Wformat=2 -Winvalid-pch >> -Wpointer-arith -Wshadow -Wunused -Wwrite-strings -Wno-deprecated >> -Wno-invalid-offsetof -Woverloaded-virtual -O3 -DNDEBUG -fPIE >> -I/src/ITK/Modules/Core/ImageAdaptors/include >> -I/src/ITK/build_icc/Modules/ThirdParty/KWIML/src >> -I/src/ITK/Modules/ThirdParty/KWIML/src >> -I/src/ITK/build_icc/Modules/ThirdParty/KWSys/src >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/v3p/netlib >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/vcl >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core >> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/v3p/netlib >> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/vcl >> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/core >> -I/src/ITK/Modules/ThirdParty/VNLInstantiation/include >> -I/src/ITK/build_icc/Modules/Core/Common >> -I/src/ITK/Modules/Core/Common/include >> -I/src/ITK/build_icc/Modules/ThirdParty/Netlib >> -I/src/ITK/Modules/Numerics/Statistics/include >> -I/src/ITK/Modules/Filtering/ImageFilterBase/include >> -I/src/ITK/Modules/Core/Transform/include >> -I/src/ITK/Modules/Core/ImageFunction/include >> -I/src/ITK/Modules/ThirdParty/DoubleConversion/src/double-conversion >> -I/src/ITK/build_icc/Modules/ThirdParty/DoubleConversion/src/double-c >> o >> nversion >> -I/src/ITK/Modules/IO/BMP/include >> -I/src/ITK/build_icc/Modules/ThirdParty/Expat/src/expat >> -I/src/ITK/Modules/ThirdParty/Expat/src/expat >> -I/src/ITK/build_icc/Modules/ThirdParty/ZLIB/src >> -I/src/ITK/Modules/ThirdParty/ZLIB/src >> -I/src/ITK/build_icc/Modules/ThirdParty/GDCM >> -I/src/ITK/build_icc/Modules/ThirdParty/GDCM/src/gdcm/Source/Common >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MediaStorageAndFil >> e >> Format >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataDictionary >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/Common >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/InformationObjectD >> e >> finition >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MessageExchangeDef >> i >> nition >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataStructureAndEn >> c odingDefinition -I/src/ITK/Modules/IO/GDCM/include >> -I/src/ITK/Modules/IO/GIPL/include >> -I/src/ITK/build_icc/Modules/IO/ImageBase >> -I/src/ITK/Modules/IO/ImageBase/include >> -I/src/ITK/Modules/IO/JPEG/include >> -I/src/ITK/build_icc/Modules/ThirdParty/MetaIO/src/MetaIO/src >> -I/src/ITK/Modules/ThirdParty/MetaIO/src/MetaIO/src >> -I/src/ITK/Modules/IO/Meta/include >> -I/src/ITK/Modules/IO/NIFTI/include >> -I/src/ITK/Modules/IO/NRRD/include -I/src/ITK/Modules/IO/PNG/include >> -I/src/ITK/Modules/IO/TIFF/include -I/src/ITK/Modules/IO/VTK/include >> -I/src/ITK/Modules/Core/TestKernel/include >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl >> >> >> >> Does anyone have a pointer to see where this error comes from? Thank you. >> >> >> >> -Jon >> >> From matt.mccormick at kitware.com Fri Apr 7 14:10:58 2017 From: matt.mccormick at kitware.com (Matt McCormick) Date: Fri, 7 Apr 2017 14:10:58 -0400 Subject: [ITK-dev] Build errors using a different C and CXX compiler In-Reply-To: References: Message-ID: Thanks, Jon! On Fri, Apr 7, 2017 at 1:49 PM, Lefman, Jonathan wrote: > There is a confirmed bug in the latest release of the Intel Compiler. Any code which compiles in gcc should compile under icc. There is a workaround listed in the last comment here: https://software.intel.com/en-us/comment/1902247. I will notify once a fix has been released. I will try to find out if we can include ITK in regular build tests for ICC development. > > -Jon > > -----Original Message----- > From: Matt McCormick [mailto:matt.mccormick at kitware.com] > Sent: Thursday, April 6, 2017 3:40 PM > To: Lefman, Jonathan > Cc: insight-developers at itk.org > Subject: Re: Build errors using a different C and CXX compiler > > Excellent, thanks, Jon! > > On Thu, Apr 6, 2017 at 3:35 PM, Lefman, Jonathan wrote: >> Matt, >> >> I just met with a technical lead for the Intel compiler front-end group to review this issue. I may have uncovered a bug in the front-end logic. They are investigating to dig into the reason for this anomaly. When I receive their analysis, I will report back what the next steps are. >> >> -Jon >> >> -----Original Message----- >> From: Matt McCormick [mailto:matt.mccormick at kitware.com] >> Sent: Wednesday, April 5, 2017 5:17 PM >> To: Lefman, Jonathan >> Cc: insight-developers at itk.org >> Subject: Re: Build errors using a different C and CXX compiler >> >> Hi Jon, >> >> It does not look like we have working builds of ICC on the dashboard [1]. As they say, if it not tested, it is broken. There are two x86_64 ICC builds, but they either have a build system issue, or ITK needs to be updated to use this compiler. What version of the compiler is it? >> >> Thanks, >> Matt >> >> [1] https://open.cdash.org/index.php?project=Insight >> >> On Wed, Apr 5, 2017 at 4:57 PM, Lefman, Jonathan wrote: >>> Hi all, >>> >>> >>> >>> I am attempting to build ITK from source (have tried using v4.11.0 >>> and >>> master) using a different CXX compiler. To start, I do not have an >>> issue when I utilize the default compiler (gcc) as much compiler. >>> This works fine; tests are successful. >>> >>> >>> >>> The error I encounter on both Ubuntu and Centos systems is the same. >>> It looks like this on the make output: >>> >>> [ 58%] Building CXX object >>> Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver. >>> dir/itkRayCastInterpolateImageFunctionTest.cxx.o >>> >>> /src/ITK/Modules/Core/ImageFunction/include/itkRayCastInterpolateImageFunction.hxx(38): >>> error: member "::RayCastHelper>> TCoordRep>::InputImageDimension [with TInputImage=itk::Image>> TCoordRep>char, >>> 3U>, TCoordRep=double]" was referenced but not defined >>> >>> itkStaticConstMacro(InputImageDimension, unsigned int, >>> >>> ^ >>> >>> >>> >>> compilation aborted for >>> /src/ITK/Modules/Core/ImageFunction/test/itkRayCastInterpolateImageFu >>> n >>> ctionTest.cxx >>> (code 2) >>> >>> make[2]: *** >>> [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDrive >>> r .dir/itkRayCastInterpolateImageFunctionTest.cxx.o] >>> Error 2 >>> >>> make[1]: *** >>> [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDrive >>> r >>> .dir/all] >>> Error 2 >>> >>> make: *** [all] Error 2 >>> >>> >>> >>> My cmake setup looks like this: >>> >>> CC=/intel/bin/icc CXX=/intel/bin/icc cmake >>> -DCMAKE_CXX_COMPILER:FILEPATH=$CXX -DCMAKE_C_COMPILER:FILEPATH=$CC >>> -DModule_PerformanceBenchmarking:BOOL=ON .. >>> >>> >>> >>> Example generated CXX_FLAGS are from: >>> ./Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriv >>> e >>> r.dir/flags.make >>> >>> # compile CXX with /intel/bin/icc >>> >>> CXX_FLAGS = -w2 -wd1268 -wd981 -wd383 -wd1418 -wd1419 -wd2259 -wd1572 >>> -wd424 -Wdisabled-optimization -Wextra -Wformat=2 -Winvalid-pch >>> -Wpointer-arith -Wshadow -Wunused -Wwrite-strings -Wno-deprecated >>> -Wno-invalid-offsetof -Woverloaded-virtual -O3 -DNDEBUG -fPIE >>> -I/src/ITK/Modules/Core/ImageAdaptors/include >>> -I/src/ITK/build_icc/Modules/ThirdParty/KWIML/src >>> -I/src/ITK/Modules/ThirdParty/KWIML/src >>> -I/src/ITK/build_icc/Modules/ThirdParty/KWSys/src >>> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/v3p/netlib >>> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/vcl >>> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core >>> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/v3p/netlib >>> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/vcl >>> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/core >>> -I/src/ITK/Modules/ThirdParty/VNLInstantiation/include >>> -I/src/ITK/build_icc/Modules/Core/Common >>> -I/src/ITK/Modules/Core/Common/include >>> -I/src/ITK/build_icc/Modules/ThirdParty/Netlib >>> -I/src/ITK/Modules/Numerics/Statistics/include >>> -I/src/ITK/Modules/Filtering/ImageFilterBase/include >>> -I/src/ITK/Modules/Core/Transform/include >>> -I/src/ITK/Modules/Core/ImageFunction/include >>> -I/src/ITK/Modules/ThirdParty/DoubleConversion/src/double-conversion >>> -I/src/ITK/build_icc/Modules/ThirdParty/DoubleConversion/src/double-c >>> o >>> nversion >>> -I/src/ITK/Modules/IO/BMP/include >>> -I/src/ITK/build_icc/Modules/ThirdParty/Expat/src/expat >>> -I/src/ITK/Modules/ThirdParty/Expat/src/expat >>> -I/src/ITK/build_icc/Modules/ThirdParty/ZLIB/src >>> -I/src/ITK/Modules/ThirdParty/ZLIB/src >>> -I/src/ITK/build_icc/Modules/ThirdParty/GDCM >>> -I/src/ITK/build_icc/Modules/ThirdParty/GDCM/src/gdcm/Source/Common >>> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MediaStorageAndFil >>> e >>> Format >>> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataDictionary >>> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/Common >>> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/InformationObjectD >>> e >>> finition >>> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MessageExchangeDef >>> i >>> nition >>> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataStructureAndEn >>> c odingDefinition -I/src/ITK/Modules/IO/GDCM/include >>> -I/src/ITK/Modules/IO/GIPL/include >>> -I/src/ITK/build_icc/Modules/IO/ImageBase >>> -I/src/ITK/Modules/IO/ImageBase/include >>> -I/src/ITK/Modules/IO/JPEG/include >>> -I/src/ITK/build_icc/Modules/ThirdParty/MetaIO/src/MetaIO/src >>> -I/src/ITK/Modules/ThirdParty/MetaIO/src/MetaIO/src >>> -I/src/ITK/Modules/IO/Meta/include >>> -I/src/ITK/Modules/IO/NIFTI/include >>> -I/src/ITK/Modules/IO/NRRD/include -I/src/ITK/Modules/IO/PNG/include >>> -I/src/ITK/Modules/IO/TIFF/include -I/src/ITK/Modules/IO/VTK/include >>> -I/src/ITK/Modules/Core/TestKernel/include >>> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo >>> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl >>> >>> >>> >>> Does anyone have a pointer to see where this error comes from? Thank you. >>> >>> >>> >>> -Jon >>> >>> From dzenanz at gmail.com Fri Apr 7 14:29:58 2017 From: dzenanz at gmail.com (=?UTF-8?B?RMW+ZW5hbiBadWtpxIc=?=) Date: Fri, 7 Apr 2017 14:29:58 -0400 Subject: [ITK-dev] Build errors using a different C and CXX compiler In-Reply-To: References: Message-ID: Microsoft already did the same! https://developercommunity.visualstudio.com/comments/6266/view.html ITK is an excellent stress test case for compilers because of big code size and omnipresent templates :) Regards, D?enan On Fri, Apr 7, 2017 at 1:49 PM, Lefman, Jonathan wrote: > There is a confirmed bug in the latest release of the Intel Compiler. Any > code which compiles in gcc should compile under icc. There is a workaround > listed in the last comment here: https://software.intel.com/en- > us/comment/1902247. I will notify once a fix has been released. I will > try to find out if we can include ITK in regular build tests for ICC > development. > > -Jon > > -----Original Message----- > From: Matt McCormick [mailto:matt.mccormick at kitware.com] > Sent: Thursday, April 6, 2017 3:40 PM > To: Lefman, Jonathan > Cc: insight-developers at itk.org > Subject: Re: Build errors using a different C and CXX compiler > > Excellent, thanks, Jon! > > On Thu, Apr 6, 2017 at 3:35 PM, Lefman, Jonathan < > jonathan.lefman at intel.com> wrote: > > Matt, > > > > I just met with a technical lead for the Intel compiler front-end group > to review this issue. I may have uncovered a bug in the front-end logic. > They are investigating to dig into the reason for this anomaly. When I > receive their analysis, I will report back what the next steps are. > > > > -Jon > > > > -----Original Message----- > > From: Matt McCormick [mailto:matt.mccormick at kitware.com] > > Sent: Wednesday, April 5, 2017 5:17 PM > > To: Lefman, Jonathan > > Cc: insight-developers at itk.org > > Subject: Re: Build errors using a different C and CXX compiler > > > > Hi Jon, > > > > It does not look like we have working builds of ICC on the dashboard > [1]. As they say, if it not tested, it is broken. There are two x86_64 ICC > builds, but they either have a build system issue, or ITK needs to be > updated to use this compiler. What version of the compiler is it? > > > > Thanks, > > Matt > > > > [1] https://open.cdash.org/index.php?project=Insight > > > > On Wed, Apr 5, 2017 at 4:57 PM, Lefman, Jonathan < > jonathan.lefman at intel.com> wrote: > >> Hi all, > >> > >> > >> > >> I am attempting to build ITK from source (have tried using v4.11.0 > >> and > >> master) using a different CXX compiler. To start, I do not have an > >> issue when I utilize the default compiler (gcc) as much compiler. > >> This works fine; tests are successful. > >> > >> > >> > >> The error I encounter on both Ubuntu and Centos systems is the same. > >> It looks like this on the make output: > >> > >> [ 58%] Building CXX object > >> Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriver. > >> dir/itkRayCastInterpolateImageFunctionTest.cxx.o > >> > >> /src/ITK/Modules/Core/ImageFunction/include/ > itkRayCastInterpolateImageFunction.hxx(38): > >> error: member "::RayCastHelper >> TCoordRep>::InputImageDimension [with TInputImage=itk::Image >> TCoordRep>char, > >> 3U>, TCoordRep=double]" was referenced but not defined > >> > >> itkStaticConstMacro(InputImageDimension, unsigned int, > >> > >> ^ > >> > >> > >> > >> compilation aborted for > >> /src/ITK/Modules/Core/ImageFunction/test/itkRayCastInterpolateImageFu > >> n > >> ctionTest.cxx > >> (code 2) > >> > >> make[2]: *** > >> [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDrive > >> r .dir/itkRayCastInterpolateImageFunctionTest.cxx.o] > >> Error 2 > >> > >> make[1]: *** > >> [Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDrive > >> r > >> .dir/all] > >> Error 2 > >> > >> make: *** [all] Error 2 > >> > >> > >> > >> My cmake setup looks like this: > >> > >> CC=/intel/bin/icc CXX=/intel/bin/icc cmake > >> -DCMAKE_CXX_COMPILER:FILEPATH=$CXX -DCMAKE_C_COMPILER:FILEPATH=$CC > >> -DModule_PerformanceBenchmarking:BOOL=ON .. > >> > >> > >> > >> Example generated CXX_FLAGS are from: > >> ./Modules/Core/ImageFunction/test/CMakeFiles/ITKImageFunctionTestDriv > >> e > >> r.dir/flags.make > >> > >> # compile CXX with /intel/bin/icc > >> > >> CXX_FLAGS = -w2 -wd1268 -wd981 -wd383 -wd1418 -wd1419 -wd2259 -wd1572 > >> -wd424 -Wdisabled-optimization -Wextra -Wformat=2 -Winvalid-pch > >> -Wpointer-arith -Wshadow -Wunused -Wwrite-strings -Wno-deprecated > >> -Wno-invalid-offsetof -Woverloaded-virtual -O3 -DNDEBUG -fPIE > >> -I/src/ITK/Modules/Core/ImageAdaptors/include > >> -I/src/ITK/build_icc/Modules/ThirdParty/KWIML/src > >> -I/src/ITK/Modules/ThirdParty/KWIML/src > >> -I/src/ITK/build_icc/Modules/ThirdParty/KWSys/src > >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/v3p/netlib > >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/vcl > >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core > >> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/v3p/netlib > >> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/vcl > >> -I/src/ITK/build_icc/Modules/ThirdParty/VNL/src/vxl/core > >> -I/src/ITK/Modules/ThirdParty/VNLInstantiation/include > >> -I/src/ITK/build_icc/Modules/Core/Common > >> -I/src/ITK/Modules/Core/Common/include > >> -I/src/ITK/build_icc/Modules/ThirdParty/Netlib > >> -I/src/ITK/Modules/Numerics/Statistics/include > >> -I/src/ITK/Modules/Filtering/ImageFilterBase/include > >> -I/src/ITK/Modules/Core/Transform/include > >> -I/src/ITK/Modules/Core/ImageFunction/include > >> -I/src/ITK/Modules/ThirdParty/DoubleConversion/src/double-conversion > >> -I/src/ITK/build_icc/Modules/ThirdParty/DoubleConversion/src/double-c > >> o > >> nversion > >> -I/src/ITK/Modules/IO/BMP/include > >> -I/src/ITK/build_icc/Modules/ThirdParty/Expat/src/expat > >> -I/src/ITK/Modules/ThirdParty/Expat/src/expat > >> -I/src/ITK/build_icc/Modules/ThirdParty/ZLIB/src > >> -I/src/ITK/Modules/ThirdParty/ZLIB/src > >> -I/src/ITK/build_icc/Modules/ThirdParty/GDCM > >> -I/src/ITK/build_icc/Modules/ThirdParty/GDCM/src/gdcm/Source/Common > >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MediaStorageAndFil > >> e > >> Format > >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataDictionary > >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/Common > >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/InformationObjectD > >> e > >> finition > >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/MessageExchangeDef > >> i > >> nition > >> -I/src/ITK/Modules/ThirdParty/GDCM/src/gdcm/Source/DataStructureAndEn > >> c odingDefinition -I/src/ITK/Modules/IO/GDCM/include > >> -I/src/ITK/Modules/IO/GIPL/include > >> -I/src/ITK/build_icc/Modules/IO/ImageBase > >> -I/src/ITK/Modules/IO/ImageBase/include > >> -I/src/ITK/Modules/IO/JPEG/include > >> -I/src/ITK/build_icc/Modules/ThirdParty/MetaIO/src/MetaIO/src > >> -I/src/ITK/Modules/ThirdParty/MetaIO/src/MetaIO/src > >> -I/src/ITK/Modules/IO/Meta/include > >> -I/src/ITK/Modules/IO/NIFTI/include > >> -I/src/ITK/Modules/IO/NRRD/include -I/src/ITK/Modules/IO/PNG/include > >> -I/src/ITK/Modules/IO/TIFF/include -I/src/ITK/Modules/IO/VTK/include > >> -I/src/ITK/Modules/Core/TestKernel/include > >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl/algo > >> -I/src/ITK/Modules/ThirdParty/VNL/src/vxl/core/vnl > >> > >> > >> > >> Does anyone have a pointer to see where this error comes from? Thank > you. > >> > >> > >> > >> -Jon > >> > >> > _______________________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/insight-developers > -------------- next part -------------- An HTML attachment was scrubbed... URL: From yxp233 at postech.ac.kr Fri Apr 7 19:27:51 2017 From: yxp233 at postech.ac.kr (=?ks_c_5601-1987?B?WGlhb3BlbmcgWWFuZyi76r73sOa/tbD4x9Cw+ik=?=) Date: Fri, 7 Apr 2017 23:27:51 +0000 Subject: [ITK-dev] Speed Issue Message-ID: Hi, I found that ITK (such as fast-marching level-set, threshold-based level-set, and region growing) does not use all CPU cores during computation. My questions include: 1. Does ITK support full CPU cores computation? 2. Did anyone try to speed up ITK? If so, What is the best and fast way to speed up ITK? And how much faster than before can I achieve? I appreciate any help in advance. Thank you. Best regards, Xiaopeng From matt.mccormick at kitware.com Sun Apr 9 18:19:37 2017 From: matt.mccormick at kitware.com (Matt McCormick) Date: Sun, 9 Apr 2017 18:19:37 -0400 Subject: [ITK-dev] [ITK-users] Speed Issue In-Reply-To: References: Message-ID: Hi Xiaopeng, > I found that ITK (such as fast-marching level-set, threshold-based level-set, and region growing) does not use all CPU cores during computation. > > My questions include: > 1. Does ITK support full CPU cores computation? In general, most algorithm implementations are multi-threaded and intended to use all CPU cores. There may be some implementations that should be multi-threaded or there may be some implementations that could be improved in their thread utilization. > 2. Did anyone try to speed up ITK? If so, What is the best and fast way to speed up ITK? And how much faster than before can I achieve? There are ongoing efforts to improve performance - your participation is welcome. See: http://public.kitware.com/pipermail/insight-developers/2017-April/025151.html Thanks, Matt From blowekamp at mail.nih.gov Mon Apr 10 08:36:47 2017 From: blowekamp at mail.nih.gov (Lowekamp, Bradley (NIH/NLM/LHC) [C]) Date: Mon, 10 Apr 2017 12:36:47 +0000 Subject: [ITK-dev] [ITK-users] Speed Issue In-Reply-To: References: Message-ID: <65848276-41CC-46D4-BAF3-F529A51C1FC9@mail.nih.gov> Hello, Regarding single threaded region growing, the nature of regions growing with a breadth first algorithm is inherently single threaded. However, the equivalent results can be obtained by doing a global threshold, followed by connect components analysis. Both of those algorithms are efficiently multi-threaded. Depending on the size of the image, shape of region, and other factors, one approach may be more efficient than the other. HTH, Brad > On Apr 7, 2017, at 7:27 PM, Xiaopeng Yang(???????) wrote: > > Hi, > > I found that ITK (such as fast-marching level-set, threshold-based level-set, and region growing) does not use all CPU cores during computation. > > My questions include: > 1. Does ITK support full CPU cores computation? > 2. Did anyone try to speed up ITK? If so, What is the best and fast way to speed up ITK? And how much faster than before can I achieve? > > I appreciate any help in advance. Thank you. > > Best regards, > Xiaopeng > _____________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://www.kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/insight-users From niels-xtk at xs4all.nl Tue Apr 11 09:11:18 2017 From: niels-xtk at xs4all.nl (Niels Dekker) Date: Tue, 11 Apr 2017 15:11:18 +0200 Subject: [ITK-dev] Static link "error LNK2005: png_get_uint_31 already defined in png.lib", missing #define in itk_png_mangle.h? Message-ID: <21acf28759ecc26926c0ac9b01080102@xs4all.nl> When trying build our project, which links statically to both ITK and the Niftyreg library, my colleague Floris Berendsen and I encountered the following link error: >itkpng-4.10.lib(pngrutil.obj) : error LNK2005: png_get_uint_31 already defined in png.lib(pngrutil.obj) [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] >...\SuperElastix-build\bin\Debug\selxAnyFileIOTest.exe : fatal error LNK1169: one or more multiply defined symbols found [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] It appears that ITK and Niftyreg link to different versions of libpng. Fortunately, ITK has done name mangling for most of the libpng API functions, to avoid such linking errors, as we can see at Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h Now it appears that the function "png_get_uint_31" is also exported by libpng, but that function is not mangled by ITK! We could locally fix our link error by adding an extra #define to "itk_png_mangle.h": #define png_get_uint_31 itk_png_get_uint_31 Do you guys agree that that would be an appropriate fix? Could such a fix be added to the ITK code base? Kind regards, Niels PS Our project, SuperElastix, can be found at https://github.com/SuperElastix/SuperElastix (We tried to build the SuperBuild from the development branch.) The Nifty Reg library is from https://cmiclab.cs.ucl.ac.uk/mmodat/niftyreg -- Niels Dekker Scientific programmer LKEB, Leiden University Medical Center, Netherlands From matt.mccormick at kitware.com Tue Apr 11 09:28:49 2017 From: matt.mccormick at kitware.com (Matt McCormick) Date: Tue, 11 Apr 2017 09:28:49 -0400 Subject: [ITK-dev] Static link "error LNK2005: png_get_uint_31 already defined in png.lib", missing #define in itk_png_mangle.h? In-Reply-To: <21acf28759ecc26926c0ac9b01080102@xs4all.nl> References: <21acf28759ecc26926c0ac9b01080102@xs4all.nl> Message-ID: Hi Niels, Thanks for discussing the issue. Yes, the addition is a good improvement that should address the issue. Could you please submit a patch?: https://itk.org/Wiki/ITK/Git/Develop Thanks, Matt On Tue, Apr 11, 2017 at 9:11 AM, Niels Dekker wrote: > When trying build our project, which links statically to both ITK and the > Niftyreg library, my colleague Floris Berendsen and I encountered the > following link error: > > >itkpng-4.10.lib(pngrutil.obj) : error LNK2005: png_get_uint_31 already > defined in png.lib(pngrutil.obj) > [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] > >...\SuperElastix-build\bin\Debug\selxAnyFileIOTest.exe : fatal error > LNK1169: one or more multiply defined symbols found > [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] > > It appears that ITK and Niftyreg link to different versions of libpng. > Fortunately, ITK has done name mangling for most of the libpng API > functions, to avoid such linking errors, as we can see at > Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h Now it appears that the > function "png_get_uint_31" is also exported by libpng, but that function is > not mangled by ITK! We could locally fix our link error by adding an extra > #define to "itk_png_mangle.h": > > #define png_get_uint_31 itk_png_get_uint_31 > > Do you guys agree that that would be an appropriate fix? Could such a fix be > added to the ITK code base? > > Kind regards, Niels > > PS Our project, SuperElastix, can be found at > https://github.com/SuperElastix/SuperElastix (We tried to build the > SuperBuild from the development branch.) The Nifty Reg library is from > https://cmiclab.cs.ucl.ac.uk/mmodat/niftyreg > > -- > Niels Dekker > Scientific programmer > LKEB, Leiden University Medical Center, Netherlands > _______________________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/insight-developers From francois.budin at kitware.com Tue Apr 11 09:35:47 2017 From: francois.budin at kitware.com (Francois Budin) Date: Tue, 11 Apr 2017 09:35:47 -0400 Subject: [ITK-dev] Static link "error LNK2005: png_get_uint_31 already defined in png.lib", missing #define in itk_png_mangle.h? In-Reply-To: <21acf28759ecc26926c0ac9b01080102@xs4all.nl> References: <21acf28759ecc26926c0ac9b01080102@xs4all.nl> Message-ID: Hello Niels, Thank you for reporting this issue. I looked into itk_png_mangle.h and indeed it looks like the function 'png_get_uint_31' should be renamed and is not. Using this command [1], updated to your ITK version, you should be able to see the the functions that are missing and need to be added to itk_png_mangle.h . It would be great if you commit submit a patch to ITK to correct this issue. You can find step by step instructions about how to contribute here [2]. Feel free to reach out if you have any problem during this process. Thank you so much for your help, Francois [1] https://github.com/InsightSoftwareConsortium/ITK/blob/master/Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h#L13-L15 [2] https://itk.org/Wiki/ITK/Git/Develop On Tue, Apr 11, 2017 at 9:11 AM, Niels Dekker wrote: > When trying build our project, which links statically to both ITK and the > Niftyreg library, my colleague Floris Berendsen and I encountered the > following link error: > > >itkpng-4.10.lib(pngrutil.obj) : error LNK2005: png_get_uint_31 already > defined in png.lib(pngrutil.obj) [...\SuperElastix-build\Testin > g\Unit\selxAnyFileIOTest.vcxproj] > >...\SuperElastix-build\bin\Debug\selxAnyFileIOTest.exe : fatal error > LNK1169: one or more multiply defined symbols found > [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] > > It appears that ITK and Niftyreg link to different versions of libpng. > Fortunately, ITK has done name mangling for most of the libpng API > functions, to avoid such linking errors, as we can see at > Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h Now it appears that > the function "png_get_uint_31" is also exported by libpng, but that > function is not mangled by ITK! We could locally fix our link error by > adding an extra #define to "itk_png_mangle.h": > > #define png_get_uint_31 itk_png_get_uint_31 > > Do you guys agree that that would be an appropriate fix? Could such a fix > be added to the ITK code base? > > Kind regards, Niels > > PS Our project, SuperElastix, can be found at > https://github.com/SuperElastix/SuperElastix (We tried to build the > SuperBuild from the development branch.) The Nifty Reg library is from > https://cmiclab.cs.ucl.ac.uk/mmodat/niftyreg > > -- > Niels Dekker > Scientific programmer > LKEB, Leiden University Medical Center, Netherlands > _______________________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/insight-developers > -------------- next part -------------- An HTML attachment was scrubbed... URL: From niels-xtk at xs4all.nl Tue Apr 11 11:49:01 2017 From: niels-xtk at xs4all.nl (Niels Dekker) Date: Tue, 11 Apr 2017 17:49:01 +0200 Subject: [ITK-dev] Static link "error LNK2005: png_get_uint_31 already defined in png.lib", missing #define in itk_png_mangle.h? In-Reply-To: References: <21acf28759ecc26926c0ac9b01080102@xs4all.nl> Message-ID: Thank you for your supportive replies, Matt and Francois. My colleague Floris Berendsen and I will try to submit a patch for this issue later this week. Kind regards, Niels Francois Budin wrote op 2017-04-11 15:35: > Hello Niels, > > Thank you for reporting this issue. I looked into itk_png_mangle.h and > indeed it looks like the function 'png_get_uint_31' should be renamed > and is not. > Using this command [1], updated to your ITK version, you should be > able to see the the functions that are missing and need to be added to > itk_png_mangle.h . > It would be great if you commit submit a patch to ITK to correct this > issue. > You can find step by step instructions about how to contribute here > [2]. Feel free to reach out if you have any problem during this > process. > > Thank you so much for your help, > Francois > > [1] > https://github.com/InsightSoftwareConsortium/ITK/blob/master/Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h#L13-L15 > [2] https://itk.org/Wiki/ITK/Git/Develop > > On Tue, Apr 11, 2017 at 9:11 AM, Niels Dekker wrote: > >> When trying build our project, which links statically to both ITK >> and the Niftyreg library, my colleague Floris Berendsen and I >> encountered the following link error: >> >>> itkpng-4.10.lib(pngrutil.obj) : error LNK2005: png_get_uint_31 >> already defined in png.lib(pngrutil.obj) >> [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] >>> ...\SuperElastix-build\bin\Debug\selxAnyFileIOTest.exe : fatal >> error LNK1169: one or more multiply defined symbols found >> [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] >> >> It appears that ITK and Niftyreg link to different versions of >> libpng. Fortunately, ITK has done name mangling for most of the >> libpng API functions, to avoid such linking errors, as we can see at >> Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h Now it appears >> that the function "png_get_uint_31" is also exported by libpng, but >> that function is not mangled by ITK! We could locally fix our link >> error by adding an extra #define to "itk_png_mangle.h": >> >> #define png_get_uint_31 itk_png_get_uint_31 >> >> Do you guys agree that that would be an appropriate fix? Could such >> a fix be added to the ITK code base? >> >> Kind regards, Niels >> >> PS Our project, SuperElastix, can be found at >> https://github.com/SuperElastix/SuperElastix (We tried to build >> the SuperBuild from the development branch.) The Nifty Reg library >> is from https://cmiclab.cs.ucl.ac.uk/mmodat/niftyreg -- Niels Dekker Scientific programmer LKEB, Leiden University Medical Center, Netherlands From francois.budin at kitware.com Tue Apr 11 11:53:25 2017 From: francois.budin at kitware.com (Francois Budin) Date: Tue, 11 Apr 2017 11:53:25 -0400 Subject: [ITK-dev] Static link "error LNK2005: png_get_uint_31 already defined in png.lib", missing #define in itk_png_mangle.h? In-Reply-To: References: <21acf28759ecc26926c0ac9b01080102@xs4all.nl> Message-ID: Thanks Niels. Let us know if you are running into any problem during that process. Francois On Tue, Apr 11, 2017 at 11:49 AM, Niels Dekker wrote: > Thank you for your supportive replies, Matt and Francois. My colleague > Floris Berendsen and I will try to submit a patch for this issue later this > week. > > Kind regards, Niels > > Francois Budin wrote op 2017-04-11 15:35: > >> Hello Niels, >> >> Thank you for reporting this issue. I looked into itk_png_mangle.h and >> indeed it looks like the function 'png_get_uint_31' should be renamed >> and is not. >> Using this command [1], updated to your ITK version, you should be >> able to see the the functions that are missing and need to be added to >> itk_png_mangle.h . >> It would be great if you commit submit a patch to ITK to correct this >> issue. >> You can find step by step instructions about how to contribute here >> [2]. Feel free to reach out if you have any problem during this >> process. >> >> Thank you so much for your help, >> Francois >> >> [1] >> https://github.com/InsightSoftwareConsortium/ITK/blob/ >> master/Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h#L13-L15 >> [2] https://itk.org/Wiki/ITK/Git/Develop >> >> On Tue, Apr 11, 2017 at 9:11 AM, Niels Dekker wrote: >> >> When trying build our project, which links statically to both ITK >>> and the Niftyreg library, my colleague Floris Berendsen and I >>> encountered the following link error: >>> >>> itkpng-4.10.lib(pngrutil.obj) : error LNK2005: png_get_uint_31 >>>> >>> already defined in png.lib(pngrutil.obj) >>> [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] >>> >>>> ...\SuperElastix-build\bin\Debug\selxAnyFileIOTest.exe : fatal >>>> >>> error LNK1169: one or more multiply defined symbols found >>> [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] >>> >>> It appears that ITK and Niftyreg link to different versions of >>> libpng. Fortunately, ITK has done name mangling for most of the >>> libpng API functions, to avoid such linking errors, as we can see at >>> Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h Now it appears >>> that the function "png_get_uint_31" is also exported by libpng, but >>> that function is not mangled by ITK! We could locally fix our link >>> error by adding an extra #define to "itk_png_mangle.h": >>> >>> #define png_get_uint_31 itk_png_get_uint_31 >>> >>> Do you guys agree that that would be an appropriate fix? Could such >>> a fix be added to the ITK code base? >>> >>> Kind regards, Niels >>> >>> PS Our project, SuperElastix, can be found at >>> https://github.com/SuperElastix/SuperElastix (We tried to build >>> the SuperBuild from the development branch.) The Nifty Reg library >>> is from https://cmiclab.cs.ucl.ac.uk/mmodat/niftyreg >>> >> > -- > Niels Dekker > Scientific programmer > LKEB, Leiden University Medical Center, Netherlands > _______________________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/insight-developers > -------------- next part -------------- An HTML attachment was scrubbed... URL: From niels-xtk at xs4all.nl Thu Apr 13 05:30:47 2017 From: niels-xtk at xs4all.nl (Niels Dekker) Date: Thu, 13 Apr 2017 11:30:47 +0200 Subject: [ITK-dev] Static link "error LNK2005: png_get_uint_31 already defined in png.lib", missing #define in itk_png_mangle.h? In-Reply-To: References: <21acf28759ecc26926c0ac9b01080102@xs4all.nl> Message-ID: For the record, Our proposed fix, submitted by Floris, is at http://review.source.kitware.com/#/c/22282/ Kind regards, Niels Francois Budin schreef op 2017-04-11 17:53: > Thanks Niels. Let us know if you are running into any problem during > that process. > > Francois > > On Tue, Apr 11, 2017 at 11:49 AM, Niels Dekker > wrote: > >> Thank you for your supportive replies, Matt and Francois. My >> colleague Floris Berendsen and I will try to submit a patch for this >> issue later this week. >> >> Kind regards, Niels >> >> Francois Budin wrote op 2017-04-11 15:35: >> Hello Niels, >> >> Thank you for reporting this issue. I looked into itk_png_mangle.h >> and >> indeed it looks like the function 'png_get_uint_31' should be >> renamed >> and is not. >> Using this command [1], updated to your ITK version, you should be >> able to see the the functions that are missing and need to be added >> to >> itk_png_mangle.h . >> It would be great if you commit submit a patch to ITK to correct >> this >> issue. >> You can find step by step instructions about how to contribute here >> [2]. Feel free to reach out if you have any problem during this >> process. >> >> Thank you so much for your help, >> Francois >> >> [1] >> https://github.com/InsightSoftwareConsortium/ITK/blob/master/Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h#L13-L15 >> [2] https://itk.org/Wiki/ITK/Git/Develop >> >> On Tue, Apr 11, 2017 at 9:11 AM, Niels Dekker wrote: >> >> When trying build our project, which links statically to both ITK >> and the Niftyreg library, my colleague Floris Berendsen and I >> encountered the following link error: >> >> itkpng-4.10.lib(pngrutil.obj) : error LNK2005: png_get_uint_31 >> already defined in png.lib(pngrutil.obj) >> [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] >> ...\SuperElastix-build\bin\Debug\selxAnyFileIOTest.exe : fatal >> error LNK1169: one or more multiply defined symbols found >> [...\SuperElastix-build\Testing\Unit\selxAnyFileIOTest.vcxproj] >> >> It appears that ITK and Niftyreg link to different versions of >> libpng. Fortunately, ITK has done name mangling for most of the >> libpng API functions, to avoid such linking errors, as we can see at >> Modules/ThirdParty/PNG/src/itkpng/itk_png_mangle.h Now it appears >> that the function "png_get_uint_31" is also exported by libpng, but >> that function is not mangled by ITK! We could locally fix our link >> error by adding an extra #define to "itk_png_mangle.h": >> >> #define png_get_uint_31 itk_png_get_uint_31 >> >> Do you guys agree that that would be an appropriate fix? Could such >> a fix be added to the ITK code base? >> >> Kind regards, Niels >> >> PS Our project, SuperElastix, can be found at >> https://github.com/SuperElastix/SuperElastix [3] (We tried to build >> the SuperBuild from the development branch.) The Nifty Reg library >> is from https://cmiclab.cs.ucl.ac.uk/mmodat/niftyreg [4] -- Niels Dekker Scientific programmer LKEB, Leiden University Medical Center, Netherlands From jonathan.lefman at intel.com Thu Apr 13 15:00:12 2017 From: jonathan.lefman at intel.com (Lefman, Jonathan) Date: Thu, 13 Apr 2017 19:00:12 +0000 Subject: [ITK-dev] Update on cmake support for TBB Message-ID: Hi all, I recently caught up with Intel's TBB team. There is good news regarding better support for cmake and TBB. Sometime soon, there will likely be a release of TBB to support this need. I will send an update when I have more specific details to pass along. -Jon From dzenanz at gmail.com Thu Apr 13 15:59:20 2017 From: dzenanz at gmail.com (=?UTF-8?B?RMW+ZW5hbiBadWtpxIc=?=) Date: Thu, 13 Apr 2017 15:59:20 -0400 Subject: [ITK-dev] Update on cmake support for TBB In-Reply-To: References: Message-ID: Hi Jonathan, that is great to hear! Is there any news on adding ITK to Intel compiler's regression test suite? Regards, D?enan Zuki?, PhD, Senior R&D Engineer, Kitware (Carrboro, N.C.) On Thu, Apr 13, 2017 at 3:00 PM, Lefman, Jonathan wrote: > Hi all, > > I recently caught up with Intel's TBB team. There is good news regarding > better support for cmake and TBB. Sometime soon, there will likely be a > release of TBB to support this need. I will send an update when I have more > specific details to pass along. > > -Jon > _______________________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Kitware offers ITK Training Courses, for more information visit: > http://kitware.com/products/protraining.php > > Please keep messages on-topic and check the ITK FAQ at: > http://www.itk.org/Wiki/ITK_FAQ > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/insight-developers > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonathan.lefman at intel.com Thu Apr 13 16:01:36 2017 From: jonathan.lefman at intel.com (Lefman, Jonathan) Date: Thu, 13 Apr 2017 20:01:36 +0000 Subject: [ITK-dev] Update on cmake support for TBB In-Reply-To: References: Message-ID: I can tell you that I?m working on it to get that pushed through. Making progress, but I do not yet have a definitive answer. Will update as soon as I am able. -Jon From: D?enan Zuki? [mailto:dzenanz at gmail.com] Sent: Thursday, April 13, 2017 3:59 PM To: Lefman, Jonathan Cc: insight-developers at itk.org Subject: Re: [ITK-dev] Update on cmake support for TBB Hi Jonathan, that is great to hear! Is there any news on adding ITK to Intel compiler's regression test suite? Regards, D?enan Zuki?, PhD, Senior R&D Engineer, Kitware (Carrboro, N.C.) On Thu, Apr 13, 2017 at 3:00 PM, Lefman, Jonathan > wrote: Hi all, I recently caught up with Intel's TBB team. There is good news regarding better support for cmake and TBB. Sometime soon, there will likely be a release of TBB to support this need. I will send an update when I have more specific details to pass along. -Jon _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Kitware offers ITK Training Courses, for more information visit: http://kitware.com/products/protraining.php Please keep messages on-topic and check the ITK FAQ at: http://www.itk.org/Wiki/ITK_FAQ Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/insight-developers -------------- next part -------------- An HTML attachment was scrubbed... URL: From blowekamp at mail.nih.gov Fri Apr 14 11:55:40 2017 From: blowekamp at mail.nih.gov (Lowekamp, Bradley (NIH/NLM/LHC) [C]) Date: Fri, 14 Apr 2017 15:55:40 +0000 Subject: [ITK-dev] [ANN] SimpleITK 1.0.0 Release Message-ID: <3A9B6734-7719-4069-8E7B-E0F1B35A0A5F@mail.nih.gov> The SimpleITK Development Team and the Insight Software Consortium are proud to announce the first major release of SimpleITK. SimpleITK is a simplified multi-language interface to the National Library of Medicine?s Insight Segmentation and Registration Toolkit (ITK). Providing an easy to use interface to ITK. SimpleITK is intended to broaden the use of ITK to researchers and domain scientist who are novice software developers, enabling them to benefit from the image-analysis power of ITK. For experienced software developers, the toolkit enables rapid prototyping of image segmentation and registration frameworks and facilitates evaluation of the effects algorithmic parameter settings have on results with minimal programming effort. In the educational setting SimpleITK's concise interface allows students to experiment with well known algorithms, enhancing their understanding of algorithm performance without the need for advanced software engineering skills. The toolkit development process follows best software engineering practices including code reviews and continuous integration testing, with results displayed online allowing everyone to gauge the status of the current code and any code that is under consideration for incorporation into the toolkit. User support is available through a dedicated mailing list and the project?s Wiki. SimpleITK is available for the following programing languages: Python, R, Java, C#, C++, Lua, Ruby, and TCL. Binary versions of the toolkit are available for the GNU Linux, Apple OS X, and Microsoft Windows operating systems. All of the source code is freely available on github under an Apache-2.0 license. Downloading SimpleITK Complete instructions on getting started with SimpleITK including downloading binaries or building SimpleITK can be found on the SimpleITK Wiki (https://itk.org/Wiki/SimpleITK/GettingStarted). - Python Binary Downloads - Python binary wheels are available for download. It is important to have the latest version of pip to ensure correct wheel compatibility and installation. To install the latest SimpleITK package form PyPI: ``` pip install --upgrade pip pip install SimpleITK ``` - Many Conda package have been upload to Anaconda Cloud on the `SimpleITK`. These can be installed with: ``` conda install -c simpleitk simpleitk ``` - A complete available set of compiled binaries, including select CSharp and Java distributions, along with source and data tar-balls are available on Source Forge (https://sourceforge.net/projects/simpleitk/files/SimpleITK/1.0.0/). Release Notes - Key Improvements: - Improved Python data bridge - New Python method `GetArrayViewFromImage` provides copy free read-only access - Updated Python data structures to use `memory view` objects - New language specific building SimpleITK front-ends - R devtools based installer (https://github.com/SimpleITK/SimpleITKRInstaller). - Python: scripts for building wheels (https://github.com/SimpleITK/SimpleITKPythonPackage) and a Conda recipe (https://github.com/SimpleITK/SimpleITKCondaRecipe). - Improved writing DICOM tags when writing a slice, and disabled writing a DICOM series with the ImageSeriesWriter - Support use of virtual image domain in the `ImageRegistrationMethod` - OnePlusOneOptimizer added to registration framework - Improved support for R: propogating C++ exceptions into R, additional R tests - Additional tests for Java - Python and R notebooks repository illustrating the basics and more advanced functionality of SimpleITK (https://github.com/InsightSoftwareConsortium/SimpleITK-Notebooks) - Added continous integration via CircleCI - Updated version and improved integration of Google Test - Updated ITK version to 4.11.0+ - Updated minimal required CMake version to 3.0, and numerous CMake changes to support various build configurations - Fix, "pip install" works for Apple Mac OS X. - Updated to usage of SWIG 3.0.11 ( using the latest SIWG is strongly recommended for R ) - Reorganized examples directory into example based sub-directories with multiple languages - Improvements to documentation transmogrification scripts - Many bug fixes and improvement to the build system! - Additional Improvements: - Added multi-hash ExternalData support for sha512 - Added R Documentation files - Update Python and Java documentation strings files - Fix allowing undefined symbols when building standalone language wrapping - Reorganized examples directory - Reorganized filter libraries to match ITK modules - Improved compilation with more specific ITK module usage - Now using modern CMake 3 style properties for exported libraries - API Changes - Replaced return Self with void for wrapped languages, to address memory and segmentation fault issue. - Depricated CMake variables with "SITK" prefix, now consistenly using the "SimpleITK" prefix for configurable CMake variables - Removed `ImageSeriesReader::GetGDCMSeriesFileNames` parameter `loadPrivateTags` parameter. This removes an overloaded version of the class method. - Added `sitkWallClock` enum for a sentinel value for random number seed to indicate initialization from the clock - New method `Image::GetNumberOfPixels` - New method `LabelMapContourOverlayImageFilter::SetColormap` - New method `LabelMapToRGBImageFilter::SetColormap` - New method `ImageRegistrationMethod::SetVirtualDomain` - New method `ImageRegistrationMethod::SetVirtualDomainFromImage` - New seed parameter to `ImageRegistrationMethod::AddMetricSamplingSeed` method - `CastImageFilter::SetOutputPixelType` method no longer accepts the pixel ID by value, uses only enumerated type Enjoy! Bradley Lowekamp -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonathan.lefman at intel.com Wed Apr 19 21:43:30 2017 From: jonathan.lefman at intel.com (Lefman, Jonathan) Date: Thu, 20 Apr 2017 01:43:30 +0000 Subject: [ITK-dev] ITK now used in Intel Compiler build validation Message-ID: Hi ITK dev community, The Intel ICC compiler team is now using ITK as part of its build validation. We hope this step will be a benefit to both ITK and the Intel Compiler. -Jon -------------- next part -------------- An HTML attachment was scrubbed... URL: From hans-johnson at uiowa.edu Thu Apr 20 09:35:33 2017 From: hans-johnson at uiowa.edu (Johnson, Hans J) Date: Thu, 20 Apr 2017 13:35:33 +0000 Subject: [ITK-dev] ITK now used in Intel Compiler build validation Message-ID: That is spectacular news! Hans -- From: Insight-developers on behalf of "Lefman, Jonathan" Date: Wednesday, April 19, 2017 at 8:43 PM To: ITK Developers Subject: [ITK-dev] ITK now used in Intel Compiler build validation Hi ITK dev community, The Intel ICC compiler team is now using ITK as part of its build validation. We hope this step will be a benefit to both ITK and the Intel Compiler. -Jon -------------- next part -------------- An HTML attachment was scrubbed... URL: