Skip to content

Instantly share code, notes, and snippets.

@pierceh89
Forked from UnaNancyOwen/QHull.2012.1.md
Last active March 14, 2016 10:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pierceh89/66af6812625ff6240e59 to your computer and use it in GitHub Desktop.
Save pierceh89/66af6812625ff6240e59 to your computer and use it in GitHub Desktop.
Building QHull with Visual Studio

Building QHull with Visual Studio (비주얼 스투디오로 QHull 빌드하는 법)

Download

  1. QHull 2012.1 for Windows(qhull-2012.1.zip)를 다운로드하여 원하는 위치에 압축을 푼다. (예: C:\qhull-2012.1)
    http://www.qhull.org/download/

CMake

  1. 압축을 풀면 build폴더 안에 구형 비주얼 스투디오 버전의 솔루션 파일이 있는데 이 파일들을 지워준다.

  2. CMake를 실행하여 아래와 같이 경로를 지정한다.

    • Where is the source code: C:\qhull-2012.1 (소스 파일 경로)
    • Where is build the binaries: C:\qhull-2012.1\build (빌드가 저장될 경로)
  3. [Configure]를 누르고 타겟으로 Visual Studio를 선택한다.

  4. 아래 설정을 확인한다.

    • CMAKE_CONFIGURATION_TYPES Debug;Release
    • CMAKE_INSTALL_PREFIX C:\Program Files\qhull (or C:\Program Files (x86)\qhull)
  5. [Add Entry] 버튼을 눌러 다음을 추가한다.

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

Build

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

  2. libqhull, user_eg2 이 두 프로젝트의 설정을 변경해야 한다.

    1. libqhull, user_eg2 각 프로젝트의 속성을 연다.
    2. '구성'의 드랍다운 메뉴에서 '모든 구성'을 선택한다.
    3. [구성속성]>[C/C++]>[고급]에 들어가서 컴파일 옵션란을 「C++ 코드로 컴파일(/TP)」로 변경한다.
    4. [적용]을 눌러 변경된 사항을 반영시킨다.
  3. QHull 빌드 (ALL_BUILD)

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

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

Environment Variable (환경 변수)

  1. QHULL_ROOT라는 이름으로 환경변수를 저장해준다. 경로는 (C:\Program Files\qhull)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment