Medical Imaging Interaction Toolkit  2023.04.00
Medical Imaging Interaction Toolkit
Deploying MITK

Introduction

  • easily create portable or installable versions of your MITK-based applications.
  • created packages include all MITK and 3rd party libraries necessary for running the application on other systems
  • distribute your binary application to other people without giving them your source code or putting them in the need for setting up a development environment themselves, eg for evaluation of your tool.
Note
This does not install the MITK headers (like an SDK). If you want to develop applications based on MITK you still have to compile MITK yourself.

Platform specific notes

Linux

You can create a tarball (.tar.gz) of your MITK application which includes all necessary non-system libraries by following these steps:

  • Set the CMake Variable CMAKE_BUILD_TYPE to either "Debug" or "Release". Any other type (or leaving the variable empty) will not work.
  • If you are using third-pary libraries not shipped with MITK, you might need to add the paths to the third-party libs to your LD_LIBRARY_PATH environment variable (not necessary if you use RPATH in your shared libraries).
  • Type "make package" in your build-tree. This will create a tarball in your build-tree directory.
Note
Libraries in system locations (/lib/, /lib32/, /lib64/, /usr/lib/, /usr/lib32/,/usr/lib64/, and /usr/X11R6/) will not be included in the tarball. If you want to distribute Qt (for example), you have to do a custom Qt installation outside of these directories.

Windows

You can create a Zip file (.zip) or an NSIS 3 installer (needs an installation of NSIS) for Windows platforms. Only "Release" builds are supported during packaging, the results of trying to package "Debug" builds are undefined.

  • In Visual Studio, build the "PACKAGE" project, this will create a .zip file and a .exe NSIS installer (if NSIS is installed).

On some systems, it might still be necessary to install the Microsoft Visual C++ Redistributable Package to start the installed application successfully.

Note
It is possible to include the Microsoft Visual C++ Redistributable Package in the application installer.
A CMake variable "CMAKE_(Your Visual Studio Version)_REDISTRIBUTABLE" will be created. It has to be set to the appropriate executable (vcredist_x86.exe or vcredist_x64.exe), which will then be part of both the NSIS installer and the ZIP Archive.
In the case of the NSIS installer it will be automatically run if no appropriate redistributable is present on the target system.
Please note that it is not possible to automatically check the provided redistributable matches the Visual Studio version used to build the installer.

macOS

You can create a drag'n drop disk image (.dmg) file for macOS. The procedure is pretty much the same as for Linux.

Note
On macOS, libraries in system locations as pointed out in the Linux section and libraries located in /System/Library will not be copied. If you want to distribute any libraries from these locations, you have to install them somewhere else prior to configuring your MITK build.