Page MenuHomePhabricator

Update ITK to version 4.7.0
Closed, ResolvedPublic

Description

The major release version 4.7.0 was published on Dec 2014 by Kitware. There are several improvements in the release notes ( for both 4.6 feature and the 4.7 major release).

Request: Update the ITK Version used in MITK ( current : 4.5.1 )

Event Timeline

Progress..

Superbuild level

  • make MITK-Configure works fine

with all deps turned on ( Boost, ACVD, OpenCV )

MITK-build level

  • make MitkCore works fine
  • MitkCoreTestDriver fails with:

/usr/bin/ld: CMakeFiles/MitkCoreTestDriver.dir/mitkDicomSeriesReaderTest.cpp.o: undefined reference to symbol '_ZN4gdcm7SubjectC2Ev'

[...]/MITK-4.7-Superbuild/GDCM-build/bin/./libgdcmCommon.so.2.4: error adding symbols: DSO missing from command line

With ITK-4.7.0 the linker is not provided with

-lgdcmDSED
-lgdcmCommon

compared to current master (w ITK 4.5.1). In addition, with the new version, the -lgdcmDICT and -lgdcmMSFF appear twice.

The 4.7.0 needs the same patching as 4.5.1:

in the ITK-src/Modules/ThirdParty/GDCM/CMakeLists.txt

the gdcmDSED and gdcmCommon has to be added to the ITK_GDCM_LIRARIES variable.

MITK compiles thru, Tests 311 OK, 65 Failing - these all use external image data and are failing because no reader could be found:

Example Output ( ImageAccesssorTest )
Loading file: #Wed Jan 28 18:34:44 2015
0.500# ERROR: No reader available for '/localdata/data/dartclient/MITK-ITK4-7-Sb-Release-experimental/CMakeExternals/Source/MITK-Data/BallBinary30x30x30.nrrd'
Exception:
itk::ClassName (0x2ec8880)
Location: "unknown"
File: /localdata/data/dartclient/MITK-4.7-src/Core/Code/IO/mitkIOUtil.cpp
Line: 563
Description: No reader available for '/localdata/data/dartclient/MITK-ITK4-7-Sb-Release-experimental/CMakeExternals/Source/MITK-Data/BallBinary30x30x30.nrrd'

The complete dashboard here:

http://cdash.mitk.org/index.php?project=MITK&date=2015-01-28&display=project&filtercount=3&showfilters=1&filtercombine=and&field1=buildname/string&compare1=61&value1=Ubuntu%2014.04.1%20LTS%20x86_64%20clang-3.4%20Qt4.8.6%20Release&field2=site/string&compare2=61&value2=mbi046&field3=buildstamp/string&compare3=61&value3=20150128-1719-Experimental&collapse=0

Any ideas?

It could be a static initialization order issue in MitkCore. This is fixed in a branch for T18605. I would suggest to wait until the branch is merged (which hopefully happens this week) and see if it resolves that problem.

User hering has pushed new remote branch:

bug-18657-Update-ITK-Version-to-4_7

User hering has pushed new remote branch:

bug-18657-ITK-Version-4_7-IntBranch

Add ChangeRequest for the new Class Macro needed.

Please update and check 4.7.1. Merge responsibly...

User hering has pushed new remote branch:

bug-18657-ITK-Version-4_7_1

[b52b73]: Merge branch 'bug-18657-ITK-Version-4_7_1'

Merged commits:

2015-02-25 16:10:04 Jan Hering [7ce193]
Update archive name and md5sum for 4.7.1


2015-02-25 16:07:13 Jan Hering [ebc886]
Merge branch 'bug-18657-ITK-Version-4_7-IntBranch' into bug-18657-ITK-Version-4_7_1


2015-02-18 17:19:55 Jan Hering [40ea76]
Add mitk counterpart of itkTypeMacroNoParent()


2015-02-18 15:45:04 Jan Hering [9b8421]
Add missing keyword to UnRegister definition

(gcc was complaining)


2015-02-18 14:09:01 Jan Hering [1d574a]
Merge branch 'bug-18657-Update-ITK-Version-to-4_7' into bug-18657-ITK-Version-4_7-IntBranch


2015-02-11 17:03:01 Jan Hering [70423d]
Force build ITKOpenJPEG Module


2015-02-11 16:56:24 Jan Hering [5d712d]
Added itkTypeMacros to top classes

  • otherwise the first derived class is missing a GetNameOfClass() to override and there is a new itkTypeMacroNoParent() macro for root classes

2015-02-11 15:01:26 Jan Hering [b77d1f]
Merge branch 'personal/hering/itk-release-4_7_0' into bug-18657-Update-ITK-Version-to-4_7

Conflicts:
CMakeExternals/ITK.cmake


2015-01-28 15:58:04 Jan Hering [83a869]
Fixed match string in ITK Patch


2015-01-28 14:55:17 Jan Hering [72a124]
Added falsely removed keyword


2015-01-28 14:34:25 Jan Hering [4d0051]
Adapt exeption level to fit base class settings


2015-01-21 16:12:55 Jan Hering [d5970e]
Change ITK Version

[d85209]: Merge branch 'bug-18657-ITK-Version-4_7_1-COMPs'

Merged commits:

2015-03-04 18:00:21 Jan Hering [b019e5]
COMP Add missing itkMacro include