Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
CMake FAQ

A general comment

MITK uses CMake for configuration. If you want to develop either using MITK as a toolkit or by extending the capabilities of the applications provided by us, we recommend using CMake for your own project too. While it might be possible to use MITK in conjunction with other options, such as QMake or setting up your own project manually it will invariably involve a lot of work and probably hacks as well. As we do have no experience with this, we will not be able to help you. Be prepared to do a lot of tweaking on by yourself.

This guide does not try to give a general introduction to CMake, instead it tries to answer some basic questions that might arise for those new to CMake, to help you get started on MITK. For a more comprehensive introduction on CMake see here.

We will assume in this guide, that the path to your source is /MITK/.

Basic Questions

Where do I get CMake and what version do I need?

See Prerequisites.

I coded a new plugin for the Workbench and nothing happened. Why?

The correct way to create a new plugin is described in Creating a new MITK plugin. Do note that you need to move the source to the MITK/Plugins directory and you will have to add the plugin to the config file (most likely MITK/Plugins/Plugins.cmake). After that see I want to use a plugin, how do I activate it?.

I want to use a plugin, how do I activate it?

  1. Start CMake
  2. Configure
  3. Set the variable MITK_BUILD_<Your-plugin-id-here> to TRUE
  4. Configure again
  5. Generate
  6. Start a build using your development environment

I want to use a module, how do I activate it?

Modules are build automatically if a plugin that requires them is activated. See I want to use a plugin, how do I activate it?.

MITK always downloads the toolkits, but I want to use my own.

This is covered in Configure the MITK superbuild.

I want to use an MITK plugin in my own project but I can not find it.

See I want to use some MITK plugin but.