이 문서에서는 AutoDock Vina 1.1.2 버전을 컴파일 하여 설치 하는 방법에 대해 예시로 소개합니다.
가. 설치 환경
구분
내용
대상 시스템
누리온
OS Version
리눅스 / CentOS 7.9
CPU
Intel Xeon Phi 7250
Intel Xeon 6148
컴파일러
gcc 4.8.5 / intel 2018.3
나. 설치 전 환경 설정
누리온 시스템에서는 PATH, LD_LIBRARY_PATH 설정을 손쉽게 하기 위해서 환경설정 툴인 Module이 구성되어 있으며 이하 설치 소개에서는 module load 를 이용한 환경설정 방법으로 안내 드립니다.
[ 환경 설정 ]
1) GNU 컴파일러 사용 시
별도의 환경설정 불필요
2) intel 컴파일러 사용 시
$ module purge
$ module load intel/18.0.3
다. AutoDock Vina-1.1.2 버전 설치 과정
설치 과정 소개는 tar 를 이용한 압축 해제 방법과 설정 방법등 진행 절차를 위주로 설명하고, 소스 파일 다운로드 등은 생략합니다.
[설치과정]
$ tar -xzvf autodock_vina_1_1_2.tgz
$ cd autodock_vina_1_1_2
$ vi src/main/main.cpp
- - - - - [ main.cpp 파일 수정 내용] 참고 - - - - -
$ vi src/split/split.cpp
- - - - - [ split.cpp 파일 수정 내용] 참고 - - - - -
$ cd build/linux/release
$ vi Makefile
- - - - - [ Makefile 파일 수정 내용] 참고 - - - - -
$ make
$ ls vina
vina vina_split
※ 컴파일러 버전 호환성 문제로 GNU 컴파일러는 반드시 시스템 기본 컴파일러(4.8.5)를 사용
[main.cpp 파일 수정 내용]
line 50:
<수정 전>
return path(str, boost::filesystem::native);
<수정 후>
return path(str);
line 664:
<수정 전>
std::cerr <"\n\nError: could not open \"" <e.name.native_file_string() <"\" for " <(e.in ? "reading" : "writing") <".\n";
<수정 후>
std::cerr <"\n\nError: could not open \"" <e.name.filename() <"\" for " <(e.in ? "reading" : "writing") <".\n";
line 676:
<수정 전>
std::cerr <"\n\nParse error on line " <e.line <" in file \"" <e.file.native_file_string() <"\": " <e.reason <'\n';
<수정 후>
std::cerr <"\n\nParse error on line " <e.line <" in file \"" <e.file.filename() <"\": " <e.reason <'\n';
[split.cpp 파일 수정 내용]
line 41:
<수정 전>
return path(str, boost::filesystem::native);
<수정 후>
return path(str);
line 211:
<수정 전>
std::cerr <"\n\nError: could not open \"" <e.name.native_file_string() <"\" for " <(e.in ? "reading" : "writing") <".\n";
<수정 후>
std::cerr <"\n\nError: could not open \"" <e.name.filename() <"\" for " <(e.in ? "reading" : "writing") <".\n";
line 223:
<수정 전>
std::cerr <"\n\nParse error on line " <e.line <" in file \"" <e.file.native_file_string() <"\": " <e.reason <'\n';
<수정 후>
std::cerr <"\n\nParse error on line " <e.line <" in file \"" <e.file.filename() <"\": " <e.reason <'\n';