Maverick/Build Instructions

From KitwarePublic
< Maverick
Revision as of 02:01, 15 September 2009 by Aylward (talk | contribs) (New page: == Building Maverick == === Getting the source === Maverick sources can be checked out via SVN: svn co https://www.kitware.com/svn/KWPublic/trunk/MavTK MavTK === Prerequisites === The...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Building Maverick

Getting the source

Maverick sources can be checked out via SVN:

 svn co https://www.kitware.com/svn/KWPublic/trunk/MavTK MavTK

Prerequisites

The following components are required to build Maverick.

  • Qt 4.3 or Qt 4.4
    • If you are only compiling Qt and not doing Qt development, download the open-source Qt license from TrollTech
      • Windows: http://trolltech.com/downloads/opensource#qt-open-source-edition
        • Tips for installing Open Source Qt to run with Visual Studio
          • 1) Open a visual studio command shell.
          • 2) Go to the Qt source directory and run "configure -platform win32-msvc2005". This will tell Qt to prepare itself for being compiled by the Visual Studio compiler. If you use another version of VS than 2005, replace win32-msvc-2005 with the appropriate one.
          • 3) Type "nmake" and take a break when it compiles.
          • 5) Add QMAKESPEC=win32-msvc2005 as a system environment variable and add QTDIR=your_dir into the system path. It is done.
      • Linux: apt-get qt4
    • If you are going to do Qt development, ask your project leader (Stephen?) about obtaining a developers (licensed) copy.
  • ITK
    • BUILD_SHARED_LIBS = OFF (or ON, but libs are VERY small in ITK because of templates)
    • ITK_USE_LIBXML2 = ON
    • ITK_USE_REVIEW = ON
    • ITK_USE_OPTIMIZED_REGISTRATION_METHODS = ON
    • ITK_USE_TRANSFORM_IO_FACTORIES = ON
    • add -fPIC to both c and cxx flags (or build ITK shared and fPIC is automatically set by Maverick)
      • CMAKE_CXX_FLAGS = -fPIC
      • CMAKE_C_FLAGS = -fPIC
  • VTK
    • BUILD_SHARED_LIBS = ON
    • VTK_USE_GUISupport = ON
    • VTK_USE_QVTK

Maverick Settings

  • Must use CMake 2.6 or higher
  • BUILD_SHARED_LIBS = ON (required for packaging on Windows)
  • Finding Qt Plugins in Maverick
    • You need to add Maverick's build/bin/Plugins direction to you Qt plugin path so that it can find QmWidgets and QmModules for use in designer
      • export QT_PLUGIN_PATH=<binary>/bin/plugins
    • Note that you'll also need the path to any other dlls that might be needed (e.g., VTK or ITK).
      • export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:<Maverick binary path/bin/<build>/
    • There are risks to such system-wide env variables, particularly if multiple build types are maintained on the machine
    • To see if your plugins were successfully loaded, Help/About Plugins
  • If you want the Volume Rendering enabled in Maverick you have to switch the cmake variable VTKEdge_USE_NVCONTROL to ON ( see the VTKEdge tutorial )

Warnings

  • The crypto library is not compatible with the PHP encoder. See the notes at the end of the the Crypto552/Testing/Cxx/CMakeLists.txt file.
  • Warnings during the compilation of Slicer3 and Insight are not reported on the dashboard
  • Warnings during the compilation of Utilities/Crypto552 are not reported on the dashboard