Skip to content

Instantly share code, notes, and snippets.

@pierceh89
Forked from UnaNancyOwen/VTK5.md
Last active November 19, 2015 04:47
Show Gist options
  • Save pierceh89/09b94fc9b0f87bb3910f to your computer and use it in GitHub Desktop.
Save pierceh89/09b94fc9b0f87bb3910f to your computer and use it in GitHub Desktop.
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 ☑ (check)
    • 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 with Visual Studio (비주얼 스투디오로 VTK6 빌드하는 법)

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. CMake를 실행하여 아래와 같이 경로를 지정한다.

    • 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 ☑ (check)
    • BUILD_TESTING ☐ (uncheck)
    • CMAKE_CONFIGURATION_TYPES Debug;Release
    • CMAKE_CXX_MP_FLAG ☑ (check)
    • CMAKE_INSTALL_PREFIX C:\Program Files\VTK (64bit) 또는 C:\Program Files (x86)\VTK (32bit)
  4. [Add Entry]버튼을 눌러 다음을 추가한다.

    Name: CMAKE_DEBUG_POSTFIX
    Type: STRING
    Value: -gd
    Description:
    위 옵션은 솔루션을 Debug용으로 컴파일 했을 때 파일명 뒤에 -gd가 붙도록 한다.
  5. [Generate]를 눌러서 솔루션이 나오는지 확인해본다.

Build

  1. Build 폴더에서 VTK6 솔루션 파일(*.sln)을 관리자 모드로 연다.

  2. VTK 빌드 (ALL_BUILD)

    1. Debug 모드, Release 모드를 확인한다.
    2. 솔루션 창에서 ALL_BUILD를 선택한다.
    3. [빌드] -> [빌드 솔루션]을 눌러서 VTK6를 빌드한다.
  3. VTK를 INSTALL하기

    1. 솔루션 탐색기에서 INSTALL을 선택한다.
    2. [빌드]>[프로젝트만]>[INSTALL만 빌드]를 선택하여 INSTALL한다. CMAKE_INSTALL_PREFIX에 지정된 경로로 필요한 파일들이 복사된다.

Environment Variable (환경 변수)

  1. VTK_DIR라는 이름으로 환경변수를 저장해준다. 경로는 (C:\Program Files\VTK)

  2. Path에 위에서 저장한 환경변수를 추가해준다. ;%VTK_DIR%\bin

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