Page MenuHomePhabricator

How to use external packages for dependencies?
Closed, ResolvedPublic

Description

The build downloads external tarballs for many packages that we already have as packages:

  • ITK
  • HDF5
  • Boost

How to use external packages for dependencies?

Event Timeline

kislinsk claimed this task.
kislinsk triaged this task as Normal priority.
kislinsk added a subscriber: kislinsk.

The superbuild has advanced variables for that:

  • EXTERNAL_ITK_DIR
  • EXTERNAL_HDF5_DIR
  • EXTERNAL_BOOST_ROOT

With -DEXTERNAL_ITK_DIR=/usr/local it still downloads and builds ITK.

MITK_USE_SYSTEM_ITK isn't recognized.

These variables need to point to the location where CMake's find_package() will find the packages. For example, for ITK it would need to point to the equivalent of the MITK-superbuild/ep/lib/cmake/ITK-5.2 folder, where the ITKConfig.cmake and ITKConfigVersion.cmake files are located.

Note that these are advanced variables for a reason as we sometimes have certain configurations of our dependencies that we rely on. In the vast majority of all cases, it is not worth struggling with this feature as it always be fragile by its nature.