湯LOG

主に自分用のメモ

ITK+VTK+Qtのビルド

・Build VTK with Qt

CMake_GUI

[Where is the source code]: C:/Program Files (x86)/VTK_6.3/vtk
[Where to build the binaries]: C:/bin_VTK

[Advanced] Check

[Configure]ボタンを押す → visualstudio2013 64bit を選択

[各種設定]

BUILD

BUILD_EXAMPLES Check(おまかせ)
BUILD_SHARED_LIBS UnCheck(rapperを使う場合Check)
BUILD_TESTING UnCheck(時間かかるので)

CMAKE

CMAKE_CONFIGURATION_TYPES Debug;Release
CMAKE_INSTALL_PREFIX C:/bin_VTK

(ここは特に問題がなければデフォルトから変えないほうがいいかも)

MODULE

Module_vtkGUISupportQtOpenGL Check
Module_vtkRenderingOpenGL Check

OPENGL

OPENGL_gl_LIBRARY opengl32
OPENGL_glu_LIBRARY glu32

QT

QT_QMAKE_EXECUTABLE C:/Qt/5.4/msvc2013_opengl/bin/qmake.exe
Qt5Core_DIR C:/Qt/5.4/msvc2013_opengl/lib/cmake/Qt5Core
Qt5Gui_DIR C:/Qt/5.4/msvc2013_opengl/lib/cmake/Qt5Gui
Qt5Network_DIR C:/Qt/5.4/msvc2013_opengl/lib/cmake/Qt5Network
Qt5OpenGL_DIR C:/Qt/5.4/msvc2013_opengl/lib/cmake/Qt5OpenGL
Qt5Sql_DIR C:/Qt/5.4/msvc2013_opengl/lib/cmake/Qt5Sql
Qt5WebKitWidgets_DIR C:/Qt/5.4/msvc2013_opengl/lib/cmake/Qt5WebKitWidgets
Qt5WebKit_DIR C:/Qt/5.4/msvc2013_opengl/lib/cmake/Qt5WebKit
Qt5Widgets_DIR C:/Qt/5.4/msvc2013_opengl/lib/cmake/Qt5Widgets
Qt5_DIR C:/Qt/5.4/msvc2013_opengl/lib/cmake/Qt5

VTK

VTK_ALL_NEW_OBJECT_FACTORY Check
VTK_Group_Imaging Check
VTK_Group_Qt Check
VTK_QT_VERSION 5
VTK_INSTALL_QT_PLUGIN_DIR ${CMAKE_INSTALL_PREFIX}/${VTK_INSTALL_QT_DIR}
VTK_RENDERING_BACKEND OPENGL(NOT OPENGL2)

[Add Entry]

Name: CMAKE_DEBUG_POSTFIX
Type: STRING
Value: -gd

・Configure, Generateが無事終了したらVTK.slnを開く(管理者で開かないとINSTALLで失敗する場合あり)
・[ALL_BUILD]をビルド
・[INSTALL]をビルド
INSTALLではCMAKE_INSTALL_PREFIXで指定したディレクトリ内にincludeとlibフォルダをまとめてくれます。
特にエラーがなければ終了!

環境変数VTK_DIRを作成してVTKのパスを設定する。
環境変数QTDIRを作成してQtのパス(C:\Qt\Qt5.4.0\5.4\msvc2013_opengl)を設定する。
環境変数Pathに;%VTK_DIR%\bin;%QTDIR%\binを追加する。

・Build ITK

CMake_GUI

[Where is the source code]: C:/Program Files (x86)/InsightToolkit-4.7.1
[Where to build the binaries]: C:/bin_ITK

[Advanced] Check

[Configure]ボタンを押す → visualstudio2013 64bit を選択

[各種設定]

BUILD

BUILD_EXAMPLES Check(おまかせ)
BUILD_SHARED_LIBS UnCheck(rapperを使う場合Check)
BUILD_TESTING UnCheck(時間かかるので)

CMAKE

CMAKE_INSTALL_PREFIX C:/bin_ITK/INSTALL

なぜかC:/bin_ITKにしようとしたらエラーになりました。
(ここは特に問題がなければデフォルトから変えないほうがいいかも)

ITK_USE_REVIEW CHECK
ITK_USE_64BITS_IDS CHECK

MODULE

itkVtkGlue CHECK

OTHER

VTK_DIR C:/bin_VTK

・Configure, Generateが無事終了したらITK.slnを開く
・[ALL_BUILD]をビルド
・[INSTALL]をビルド
特にエラーがなければ終了!
ただ、自分の場合はitkVtkGlue-4.7.libが見つかりませんとエラーが出ました。
どうやらitkVtkGlue-4.7.libがちゃんと生成されてないみたいです。
C:/bin_ITK/lib/CmakeにあるitkVtkGlue.cmakeを見てみると、どうやら必要なvtkのヘッダーのパスがうまく通ってない?
おそらく、vtkの[CMAKE_INSTALL_PREFIX]がデフォルトではC:/Program Files (x86)/VTKとなっていて、ここを変更してしまったためパスがうまく読み込めていなかったのかと。
またCMakeからやり直すのは面倒なので、module/bridge/itkVtkGlueにあるitkVtkGlue.slnを開き、追加のインクルードディレクトリでC:/bin_VTK/includeを追加します。
そしてALL_BUILD、INSTALLをすると無事にitkVtkGlue-4.7.libが生成できました。
もっとうまい方法あると思いますが、、

最後に、環境変数ITK_DIRを作成してITKのパスを設定します。
環境変数Pathに;%ITK_DIR%\binを追加。

ITK+VTK+Qtのビルドについての情報があまりなかったので参考にしていただければと思います。