Farsight ITKv4 Migration Guide

From FarsightWiki
Revision as of 23:16, 9 June 2011 by Gramak (Talk | contribs)
Jump to: navigation, search

This page mostly documents the changes from the FARSIGHT_HowToBuild guide with a discrete build to work with ITKv4 and provides tips and hints on how to modify the existing codebase to work with the new/modified ITK classes. The SuperBuild is not known to work yet with ITKv4, so if you need ITKv4, this is the only way to do it.

Contents

Build requirements

VXL

Revision 32353 or later:

svn checkout --revision 32352 https://vxl.svn.sourceforge.net/svnroot/vxl/trunk/

ITK

v4.0a7 or later:

git clone git://itk.org/ITK.git
cd ITK
git checkout f4e5ba8fb7d238b6980802cd56fd0d9bdbdbb6ac

CMake Changes

ITK

ITK now has modules. Modules can be individually or group-wise turned on and off. It is recommended to just turn on all the modules since most of ITK's functions are templated and thus are not built until they are actually used in your program. Note: If you turn on a group, it will always build all the modules in that group regardless of if you have that module checked or not.

Check the ITK build guidelines and also turn on the following

  • ITKGroup_*
  • ITK_USE_64_BITS_IDS

CMakeList files may need to be edited to use ${ITK_LIBRARIES} instead of ITKCommon, ITKIO, ITKBasicFilter.... etc, otherwise you will get errors like "Cannot open file: ITKCommon.lib"

Code changes

Changes to ITK since v3.20 should be located in one of three places:

http://ij.itk.org/itkfaq/index.php?action=search&tagging_id=2
http://www.itk.org/Wiki/Proposals:Refactoring_Statistics_Framework_2007_Migration_Users_Guide
<ITKv4 src folder>\ITK\Documentation\Migration

In addition, it maybe helpful to check the ITKv4 API:

http://www.itk.org/Doxygen/html/index.html

If you cannot find the change documentation, please write to the ITK Developer's List

Personal tools