본문 바로가기

컴퓨터/설치하자

Geant4 install (Ubuntu 에 geant4설치하기)


  • Ubuntu가 Linux 전반에서 compiler나 software의 업데이트가 빠르므로 Ubuntu 이용.

  • GATE의 설치를 위해 현재(2016년 2월) GATE에서 지원하는 Geant4의 최신버전 4.10.01 설치

  • Geant4 공식홈에 들어가서 source code download
    geant4.web.cern.ch
     
  • Source를 unzip함.
  • 기본으로 요구되는 설치파일
    • gcc 4.6 이상 - 이미 설치되어 있을 것임.

$ sudo apt-get install gcc

    • cmake 와ccmake

$ sudo apt-get install cmake
$ sudo apt-get install cmake-curses-gui

  • 설치할 위치에 geant4 source를 언집하고, 언집한 폴더가 있는 위치에 build, install 등의 폴더를 만든다.
    • 설치 폴더 생성

$ mkdir geant4
$ cd geant4

    • Unzip

$ tar -czvf geant4.10.01.tar.gz .

    • 폴더 생성

$ mkdir build
$ mkdir install

  • build 폴더로 들어가서 ccmake로 build를 한다. (이 작업중에 여러 설치가 필요한 것들이 ccmake 의 화면에 표시되므로 각각 설치한다.
    • build 폴더로 이동

$ cd build

    • ccmake로 빌드 시작 (소스가 ../geant4.10.01에 있다고 가정)

$ ccmake ../geant4.10.

  • ccmake 에서 configure와 generate를 시행한다.
    • c를 눌러 configure를 시행
    • 에러에 Could Not find (필요한 소스) 가 표시된다.
    • 필요한 소스를 turminal 상에서 apt-get install 명령어 혹은 software center, synaptic manager를 통해 인스톨한다.
    • 인스톨 후에 e를 누르고 에러창에서 나가서 다시 c(configure), 에러가 뜨지 않을 때까지 라이브러리나 필요소스를 인스톨한다.
    • 주로 필요한 소스 (에러)
      libexpat1-dev   (Could not find EXPAT)
      g++   (CMAKE_CXX_COMPILER-NOTFOUND)(g++설치후에는 로그아웃 필요 q(quit)을 눌러 나가서 로그아웃 하고오자 )
      freeglut3-dev (Could not find OpenGL)
      qt4-dev-tools (requires Qt4.x)
      libxmu-dev (could not find X11 Xmu library)
    • 추천 옵션은 다음과 같다.
      OpenGL_X11     ON
      QT                   ON
      INSTALL DATA   ON
    • configure를 해도 에러가 뜨지 않으면 generate 가 가능해진다. [g]를 눌러 generate를 한다.

  • make

$ make -j(n)  

    • (n)은 사용할 컴퓨터의 thread 갯수이다.
      데이터 파일을 다운로드 하고 설치 준비를 하기 때문에 가장 많은 시간이 걸린다.

  • make install

$ make install

    • 인스톨이 완료되면 path를 지정해준다
      개인적으로 install폴더의 bin에 있는 geant4.sh를 source로 읽거나, build폴더에 있는 geant4make.sh를 읽는 게 편하더라.
    • 에디터로 홈 디렉토리의 .bash_rc 를 수정한다 (생성).

$ gedit ~/.bashrc

    • in .bashrc
      source (install folder 위치)/bin/geant4.sh 추가하고 저장
      혹은
      source (build forder 위치)/geant4make.sh 추가하고 저장

  • 재 로그인 하고 example을 돌려본다.
    성공?