리눅스 환경에서 자바 프로그램을 실행할 때 설정해줘야 하는 환경 변수 중에 LD_LIBRARY_PATH
라는게 있다.
LD_LIBRARY_PATH는 '로더(Loader)'가 공유 라이브러리나 동적 라이브러리를 찾을 때 찾아가는 경로를 지정하는 환경변수다. 맨 앞에 있는 LD라는 프리픽스(Prefix)가 로더를 의미한다. 리눅스 환경에서 실행 파일을 PATH 환경변수에 지정한 경로에서 찾는 것과 동일하다고 생각하면 된다.
.bashrc 파일이나 스크립트 파일에서 다음과 같이 LD_LIBRARY_PATH 환경 변수를 지정해주면 된다.
$ LD_LIBRARY_PATH=/home/user/lib:/home/user/test/lib
$ export LD_LIBRARY_PATH
PATH 환경변수처럼 각 경로들은 '콜론(:)' 문자를 이용해 구분된다. 로더에 라이브러리 로딩 요청이 들어오면 우선 LD_LIBRARY_PATH 환경변수에 있는 경로들을 찾아가면소 공유 라이브러리 혹은 동적 라이브러리 파일을 찾게 된다. LD_LIBRARY_PATH에 라이브러리가 없으면, 그 다음 표준 라이브러리 경로인 '/lib'과 '/usr/lib'을 찾게 된다.
자바 애플리케이션을 실행할 때, Java 명령의 옵션 중에 -Djava.library.path 옵션으로 공유 라이브러리 경로를 명시할 수 있다. LD_LIBRARY_PATH 환경변수를 지정한 경우 -Djava.library.path 옵션으로 입력한 것처럼 경로를 찾아서 라이브러리를 로드하게 된다.
댓글