Create a gist now

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Building VTK with Visual Studio

Building VTK5 with Visual Studio

Download

  1. VTK 5.10.1(VTK-5.10.1.zip)をダウンロードしてファイルを解凍する。(C:\VTK-5.10.1) http://www.vtk.org/VTK/resources/software.html#previous
    https://github.com/Kitware/VTK/tree/v5.10.1
     

CMake

  1. ソースコードの入力先とソリューションファイルの出力先を指定する。

    • Where is the source code: C:\VTK-5.10.1
    • Where is build the binaries: C:\VTK-5.10.1\build
  2. [Configure]を押してターゲットとなるVisual Studioを選択する。

  3. 各種設定を行う。

    • BUILD_SHAREED_LIBS ☐ (uncheck)
    • BUILD_TESTING ☐ (uncheck)
    • CMAKE_CONFIGURATION_TYPES Debug;Release
    • CMAKE_INSTALL_PREFIX C:\Program Files\VTK (or C:\Program Files (x86)\VTK)
  4. [Add Entry]を押して以下の設定を追加する。

    Name: CMAKE_DEBUG_POSTFIX
    Type: STRING
    Value: -gd
    Description:
    * Debugビルドの生成ファイルのファイル名(最後尾)に付加する文字列。
  5. [Generate]を押してソリューションファイルを出力する。

Build

  1. Visual Studioを管理者権限で起動してVTKのソリューションファイル(C:\VTK-5.10.1\build\VTK.sln)を開く。
    (Visual Studioを管理者権限で起動しないとINSTALLが失敗する。)

  2. ソースコードを修正する。

    • vtkOStreamWrapper.cxx
      60 line

      //VTKOSTREAM_OPERATOR(ostream&);
      vtkOStreamWrapper& vtkOStreamWrapper::operator << (ostream& a) {
        this->ostr << (void *)&a;
        return *this;
      }
      
    • vtkEnSightGoldBinaryReader.cxx
      3925 line

      if (this->IFile->read(result, 80).fail())
      

      3944 line

      if (this->IFile->read(dummy, 8).fail())
      

      4001 line

      if (this->IFile->read(dummy, 4).fail())
      

      4008 line

      if (this->IFile->read((char*)result, sizeof(int)).fail())
      

      4025 line

      if (this->IFile->read(dummy, 4).fail())
      

      4048 line

      if (this->IFile->read(dummy, 4).fail())
      

      4055 line

      if (this->IFile->read((char*)result, sizeof(int)*numInts).fail())
      

      4072 line

      if (this->IFile->read(dummy, 4).fail())
      

      4095 line

      if (this->IFile->read(dummy, 4).fail())
      

      4102 line

      if (this->IFile->read((char*)result, sizeof(float)*numFloats).fail())
      

      4119 line

      if (this->IFile->read(dummy, 4).fail())
      
    • vtkConvexHull2D.cxx
      31 line

      #include <algorithm>
      
    • vtkAdjacencyMatrixToEdgeTable.cxx
      31 line

      #include <algorithm>
      
    • vtkNormalizeMatrixVectors.cxx
      30 line

      #include <algorithm>
      
    • vtkPairwiseExtractHistogram2D.cxx
      39 line

      #include <algorithm>
      
    • vtkControlPointsItem.cxx
      35 line

      #include <algorithm>
      
    • vtkPiecewisePointHandleItem.cxx
      31 line

      #include <algorithm>
      
    • vtkParallelCoordinatesRepresentation.cxx
      83 line

      #include <algorithm>
      
  3. VTKをビルドする。(ALL_BUILD)

    1. ソリューションの構成(Debug, Release)を設定する。
    2. ソリューションエクスプローラーからALL_BUILDプロジェクトを選択する。
    3. [ビルド]>[ソリューションのビルド]を押してVTKをビルドする。
  4. VTKをインストールする。(INSTALL)

    1. ソリューションエクスプローラーからINSTALLプロジェクトを選択する。
    2. [ビルド]>[プロジェクトのみ]>[INSTALLのみをビルド]を押してVTKをインストールする。
      CMAKE_INSTALL_PREFIXで指定した出力先へ必要なファイルがコピーされる。

Environment Variable

  1. 環境変数VTK_ROOTを作成してVTKのパス(C:\Program Files\VTK)を設定する。

  2. 環境変数Pathに;%VTK_ROOT%\binを追加する。

Building VTK6.1 with Visual Studio

Download

  1. VTK 6.1.0(VTK-6.1.0.zip)をダウンロードしてファイルを解凍する。(C:\VTK-6.1.0) http://www.vtk.org/VTK/resources/software.html#latestcand
    https://github.com/Kitware/VTK/tree/v6.1.0
     

CMake

  1. ソースコードの入力先とソリューションファイルの出力先を指定する。

    • Where is the source code: C:\VTK-6.1.0
    • Where is build the binaries: C:\VTK-6.1.0\build
  2. [Configure]を押してターゲットとなるVisual Studioを選択する。

  3. 各種設定を行う。

    • BUILD_SHAREED_LIBS ☐ (uncheck)
    • BUILD_TESTING ☐ (uncheck)
    • CMAKE_CONFIGURATION_TYPES Debug;Release
    • CMAKE_CXX_MP_FLAG ☑ (check)
    • CMAKE_INSTALL_PREFIX C:\Program Files\VTK (or C:\Program Files (x86)\VTK)
  4. [Add Entry]を押して以下の設定を追加する。

    Name: CMAKE_DEBUG_POSTFIX
    Type: STRING
    Value: -gd
    Description:
    * Debugビルドの生成ファイルのファイル名(最後尾)に付加する文字列。
  5. [Generate]を押してソリューションファイルを出力する。

Build

  1. Visual Studioを管理者権限で起動してVTKのソリューションファイル(C:\VTK-6.1.0\build\VTK.sln)を開く。
    (Visual Studioを管理者権限で起動しないとINSTALLが失敗する。)

  2. VTKをビルドする。(ALL_BUILD)

    1. ソリューションの構成(Debug, Release)を設定する。
    2. ソリューションエクスプローラーからALL_BUILDプロジェクトを選択する。
    3. [ビルド]>[ソリューションのビルド]を押してVTKをビルドする。
  3. VTKをインストールする。(INSTALL)

    1. ソリューションエクスプローラーからINSTALLプロジェクトを選択する。
    2. [ビルド]>[プロジェクトのみ]>[INSTALLのみをビルド]を押してVTKをインストールする。
      CMAKE_INSTALL_PREFIXで指定した出力先へ必要なファイルがコピーされる。

Environment Variable

  1. 環境変数VTK_DIRを作成してVTKのパス(C:\Program Files\VTK)を設定する。

  2. 環境変数Pathに;%VTK_DIR%\binを追加する。

Building VTK 6.3.0 with Visual Studio

Download

  1. VTK 6.3.0(VTK-6.3.0.zip)をダウンロードしてファイルを解凍する。(C:\VTK-6.3.0) http://www.vtk.org/VTK/resources/software.html#latestcand
    https://github.com/Kitware/VTK/tree/v6.3.0
     

CMake

  1. ソースコードの入力先とソリューションファイルの出力先を指定する。

    • Where is the source code: C:\VTK-6.3.0
    • Where is build the binaries: C:\VTK-6.3.0\build
  2. [Configure]を押してターゲットとなるVisual Studioを選択する。

  3. 各種設定を行う。

    • BUILD_SHAREED_LIBS ☐ (uncheck)
    • BUILD_TESTING ☐ (uncheck)
    • CMAKE_CONFIGURATION_TYPES Debug;Release
    • CMAKE_CXX_MP_FLAG ☑ (check)
    • CMAKE_INSTALL_PREFIX C:\Program Files\VTK (or C:\Program Files (x86)\VTK)
  4. [Add Entry]を押して以下の設定を追加する。

    Name: CMAKE_DEBUG_POSTFIX
    Type: STRING
    Value: -gd
    Description:
    * Debugビルドの生成ファイルのファイル名(最後尾)に付加する文字列。
  5. [Generate]を押してソリューションファイルを出力する。

Build

  1. Visual Studioを管理者権限で起動してVTKのソリューションファイル(C:\VTK-6.3.0\build\VTK.sln)を開く。
    (Visual Studioを管理者権限で起動しないとINSTALLが失敗する。)

  2. VTKをビルドする。(ALL_BUILD)

    1. ソリューションの構成(Debug, Release)を設定する。
    2. ソリューションエクスプローラーからALL_BUILDプロジェクトを選択する。
    3. [ビルド]>[ソリューションのビルド]を押してVTKをビルドする。
  3. VTKをインストールする。(INSTALL)

    1. ソリューションエクスプローラーからINSTALLプロジェクトを選択する。
    2. [ビルド]>[プロジェクトのみ]>[INSTALLのみをビルド]を押してVTKをインストールする。
      CMAKE_INSTALL_PREFIXで指定した出力先へ必要なファイルがコピーされる。

Environment Variable

  1. 環境変数VTK_DIRを作成してVTKのパス(C:\Program Files\VTK)を設定する。

  2. 環境変数Pathに;%VTK_DIR%\binを追加する。

Building VTK 7.0.0 with Visual Studio

Download

  1. VTK 7.0.0(VTK-7.0.0.zip)をダウンロードしてファイルを解凍する。(C:\VTK-7.0.0) http://www.vtk.org/VTK/resources/software.html#latestcand
    https://github.com/Kitware/VTK/tree/v7.0.0
     

CMake

  1. ソースコードの入力先とソリューションファイルの出力先を指定する。

    • Where is the source code: C:\VTK-7.0.0
    • Where is build the binaries: C:\VTK-7.0.0\build
  2. [Configure]を押してターゲットとなるVisual Studioを選択する。

  3. 各種設定を行う。
    BUILD

    • BUILD_SHAREED_LIBS ☐ (uncheck)
    • BUILD_TESTING ☐ (uncheck)

    CMAKE

    • CMAKE_CONFIGURATION_TYPES Debug;Release
    • CMAKE_CXX_MP_FLAG ☑ (check)
    • CMAKE_INSTALL_PREFIX C:\Program Files\VTK (or C:\Program Files (x86)\VTK)

    VTK

    • VTK_RENDERING_BACKEND OpenGL *1

    *1 この問題(#1601)を回避するための一時的な措置。

  4. [Add Entry]を押して以下の設定を追加する。

    Name: CMAKE_DEBUG_POSTFIX
    Type: STRING
    Value: -gd
    Description:
    * Debugビルドの生成ファイルのファイル名(最後尾)に付加する文字列。
  5. [Generate]を押してソリューションファイルを出力する。

Build

  1. Visual Studioを管理者権限で起動してVTKのソリューションファイル(C:\VTK-7.0.0\build\VTK.sln)を開く。
    (Visual Studioを管理者権限で起動しないとINSTALLが失敗する。)

  2. VTKをビルドする。(ALL_BUILD)

    1. ソリューションの構成(Debug, Release)を設定する。
    2. ソリューションエクスプローラーからALL_BUILDプロジェクトを選択する。
    3. [ビルド]>[ソリューションのビルド]を押してVTKをビルドする。
  3. VTKをインストールする。(INSTALL)

    1. ソリューションエクスプローラーからINSTALLプロジェクトを選択する。
    2. [ビルド]>[プロジェクトのみ]>[INSTALLのみをビルド]を押してVTKをインストールする。
      CMAKE_INSTALL_PREFIXで指定した出力先へ必要なファイルがコピーされる。

Environment Variable

  1. 環境変数VTK_DIRを作成してVTKのパス(C:\Program Files\VTK)を設定する。

  2. 環境変数Pathに;%VTK_DIR%\binを追加する。

Building VTK 7.1.1 with Visual Studio

Download

  1. VTK 7.1.1(VTK-7.1.1.zip)をダウンロードしてファイルを解凍する。(C:\VTK-7.1.1) http://www.vtk.org/VTK/resources/software.html#latestcand
    https://github.com/Kitware/VTK/tree/v7.1.1
     

CMake

  1. ソースコードの入力先とソリューションファイルの出力先を指定する。

    • Where is the source code: C:\VTK-7.1.1
    • Where is build the binaries: C:\VTK-7.1.1\build
  2. [Configure]を押してターゲットとなるVisual Studioを選択する。

  3. 各種設定を行う。
    BUILD

    • BUILD_SHAREED_LIBS ☐ (uncheck)
    • BUILD_TESTING ☐ (uncheck)

    CMAKE

    • CMAKE_CONFIGURATION_TYPES Debug;Release
    • CMAKE_CXX_MP_FLAG ☑ (check)
    • CMAKE_INSTALL_PREFIX C:/Program Files/VTK (or C:/Program Files (x86)/VTK)

    VTK

    • VTK_RENDERING_BACKEND OpenGL *1

    *1 この問題(#1601)を回避するための一時的な措置。

  4. [Add Entry]を押して以下の設定を追加する。

    Name: CMAKE_DEBUG_POSTFIX
    Type: STRING
    Value: -gd
    Description:
    * Debugビルドの生成ファイルのファイル名(最後尾)に付加する文字列。
  5. [Generate]を押してソリューションファイルを出力する。

Build

  1. Visual Studioを管理者権限で起動してVTKのソリューションファイル(C:\VTK-7.1.1\build\VTK.sln)を開く。
    (Visual Studioを管理者権限で起動しないとINSTALLが失敗する。)

  2. VTKをビルドする。(ALL_BUILD)

    1. ソリューションの構成(Debug, Release)を設定する。
    2. ソリューションエクスプローラーからALL_BUILDプロジェクトを選択する。
    3. [ビルド]>[ソリューションのビルド]を押してVTKをビルドする。
  3. VTKをインストールする。(INSTALL)

    1. ソリューションエクスプローラーからINSTALLプロジェクトを選択する。
    2. [ビルド]>[プロジェクトのみ]>[INSTALLのみをビルド]を押してVTKをインストールする。
      CMAKE_INSTALL_PREFIXで指定した出力先へ必要なファイルがコピーされる。

Environment Variable

  1. 環境変数VTK_DIRを作成してVTKのパス(C:\Program Files\VTK)を設定する。

  2. 環境変数Pathに;%VTK_DIR%\binを追加する。

Building VTK 8.0.0 with Visual Studio

Download

  1. VTK 8.0.0(VTK-8.0.0.zip)をダウンロードしてファイルを解凍する。(C:\VTK-7.0.0) http://www.vtk.org/VTK/resources/software.html#latestcand
    https://github.com/Kitware/VTK/tree/v8.0.0
     

CMake

  1. ソースコードの入力先とソリューションファイルの出力先を指定する。

    • Where is the source code: C:\VTK-8.0.0
    • Where is build the binaries: C:\VTK-8.0.0\build
  2. [Configure]を押してターゲットとなるVisual Studioを選択する。

  3. 各種設定を行う。
    BUILD

    • BUILD_SHAREED_LIBS ☐ (uncheck)
    • BUILD_TESTING ☐ (uncheck)

    CMAKE

    • CMAKE_CONFIGURATION_TYPES Debug;Release
    • CMAKE_CXX_MP_FLAG ☑ (check)
    • CMAKE_INSTALL_PREFIX C:/Program Files/VTK (or C:/Program Files (x86)/VTK)

    VTK

    • VTK_RENDERING_BACKEND OpenGL *1

    *1 この問題(#1601)を回避するための一時的な措置。

  4. [Add Entry]を押して以下の設定を追加する。

    Name: CMAKE_DEBUG_POSTFIX
    Type: STRING
    Value: -gd
    Description:
    * Debugビルドの生成ファイルのファイル名(最後尾)に付加する文字列。
  5. [Generate]を押してソリューションファイルを出力する。

Build

  1. Visual Studioを管理者権限で起動してVTKのソリューションファイル(C:\VTK-8.0.0\build\VTK.sln)を開く。
    (Visual Studioを管理者権限で起動しないとINSTALLが失敗する。)

  2. VTKをビルドする。(ALL_BUILD)

    1. ソリューションの構成(Debug, Release)を設定する。
    2. ソリューションエクスプローラーからALL_BUILDプロジェクトを選択する。
    3. [ビルド]>[ソリューションのビルド]を押してVTKをビルドする。
  3. VTKをインストールする。(INSTALL)

    1. ソリューションエクスプローラーからINSTALLプロジェクトを選択する。
    2. [ビルド]>[プロジェクトのみ]>[INSTALLのみをビルド]を押してVTKをインストールする。
      CMAKE_INSTALL_PREFIXで指定した出力先へ必要なファイルがコピーされる。

Environment Variable

  1. 環境変数VTK_DIRを作成してVTKのパス(C:\Program Files\VTK)を設定する。

  2. 環境変数Pathに;%VTK_DIR%\binを追加する。

@UnaNancyOwen

This comment has been minimized.

Show comment
Hide comment
@UnaNancyOwen

UnaNancyOwen Jul 22, 2015

Note: Building VTK 6.2 with Visual Studio 2015

Visual Studio 2015でC99がサポートされたことに起因するエラーの修正、Visual C++ 2015の破壊的変更に起因するエラーの修正、およびコンパイラの最適化に起因するエラー(C1001)の修正を行う必要がある。

  • 以下のPull Request(#311#307)をMergeする。
    • Common/Core/vtkWin32ProcessOutputWindow.cxx
      98 line

      sprintf(exeName, "vtkWin32OWP_%" PRIdword "_%p_%u.exe",
      
    • ThirdParty/hdf5/vtkhdf5/config/cmake/ConfigureChecks.cmake
      186 line

      # set (H5_HAVE_TIMEZONE 1)
      
    • ThirdParty/libxml2/vtklibxml2/config_cmake.h.in
      253 line

      #if defined(_MSC_VER) && (_MSC_VER < 1900)
      
    • ThirdParty/tiff/vtktiff/CMakeLists.txt
      70 line (add)

      CHECK_INCLUDE_FILES("search.h" HAVE_SEARCH_H)
      
    • ThirdParty/tiff/vtktiff/tif_config.h.in
      73-75 line (add)

      /* Define to 1 if you have the <search.h> header file. */
      #cmakedefine HAVE_SEARCH_H @HAVE_SEARCH_H@
      
      
    • ThirdParty/hdf5/vtkhdf5/config/cmake/HDF5Tests.c
      235-245 line (add)

      #if defined(_MSC_VER) && defined(_DEBUG)
      # include <crtdbg.h>
      int DebugReport(int reportType, char* message, int* returnValue)
      {
        (void)reportType;
        (void)message;
        (void)returnValue;
        return 1; /* no further handling required */
      }
      #endif
      
      

      252-254 line (add)

      #if defined(_MSC_VER) && defined(_DEBUG)
        _CrtSetReportHook(DebugReport);
      #endif
      
  • ソースコードを修正する。 (暫定的な修正)
    • IO/EnSight/vtkEnSightReader.cxx
      1467 line (add)

      #pragma optimize( "", off )
      

      1785 line (add)

      #pragma optimize( "", on )
      
Owner

UnaNancyOwen commented Jul 22, 2015

Note: Building VTK 6.2 with Visual Studio 2015

Visual Studio 2015でC99がサポートされたことに起因するエラーの修正、Visual C++ 2015の破壊的変更に起因するエラーの修正、およびコンパイラの最適化に起因するエラー(C1001)の修正を行う必要がある。

  • 以下のPull Request(#311#307)をMergeする。
    • Common/Core/vtkWin32ProcessOutputWindow.cxx
      98 line

      sprintf(exeName, "vtkWin32OWP_%" PRIdword "_%p_%u.exe",
      
    • ThirdParty/hdf5/vtkhdf5/config/cmake/ConfigureChecks.cmake
      186 line

      # set (H5_HAVE_TIMEZONE 1)
      
    • ThirdParty/libxml2/vtklibxml2/config_cmake.h.in
      253 line

      #if defined(_MSC_VER) && (_MSC_VER < 1900)
      
    • ThirdParty/tiff/vtktiff/CMakeLists.txt
      70 line (add)

      CHECK_INCLUDE_FILES("search.h" HAVE_SEARCH_H)
      
    • ThirdParty/tiff/vtktiff/tif_config.h.in
      73-75 line (add)

      /* Define to 1 if you have the <search.h> header file. */
      #cmakedefine HAVE_SEARCH_H @HAVE_SEARCH_H@
      
      
    • ThirdParty/hdf5/vtkhdf5/config/cmake/HDF5Tests.c
      235-245 line (add)

      #if defined(_MSC_VER) && defined(_DEBUG)
      # include <crtdbg.h>
      int DebugReport(int reportType, char* message, int* returnValue)
      {
        (void)reportType;
        (void)message;
        (void)returnValue;
        return 1; /* no further handling required */
      }
      #endif
      
      

      252-254 line (add)

      #if defined(_MSC_VER) && defined(_DEBUG)
        _CrtSetReportHook(DebugReport);
      #endif
      
  • ソースコードを修正する。 (暫定的な修正)
    • IO/EnSight/vtkEnSightReader.cxx
      1467 line (add)

      #pragma optimize( "", off )
      

      1785 line (add)

      #pragma optimize( "", on )
      
@UnaNancyOwen

This comment has been minimized.

Show comment
Hide comment
Owner

UnaNancyOwen commented Nov 13, 2015

Note: Building QVTK(VTK6+Qt5) with Visual Studio

https://gist.github.com/UnaNancyOwen/77d61f9f21376c9b59fc

@caomw

This comment has been minimized.

Show comment
Hide comment

caomw commented Mar 15, 2016

good

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment