다음 이전 차례

3. 컴파일

JServ는 두 가지 방법으로 사용할 수 있다. 첫번째는 아파치에 직접 포함시켜 컴파일을 하는 것이고, 두번째는 동적 로딩 모듈로 만드는 것이다. 두번째 방법을 사용하려면 기존의 아파치가 동적 모듈을 지원하여야 한다. RPM 등의 패키지로 배포되는 아파치는 대부분 이 기능을 지원하고 있으며, 직접 아파치를 컴파일한다면 configure 명령 실행시에 다음 옵션을 주면 된다.

--enable-rule=SHARED_CORE --enable-module=so

어떤 방식으로 JServ를 이용할 지를 결정하고, 그에 맞춰 아파치를 설정했다면 이제 JServ를 컴파일 할 차례이다. 그러기 위해서는 configure 명령 실행시에 컴파일 과정의 여러 옵션을 결정해 주어야 한다.

3.1 설치 디렉토리

Jserv가 설치될 곳을 다음 옵션으로 정해 준다.

--prefix=/usr/local/jserv
여기에는 실제로 JServ 모듈이 저장되는 것이 아니라 JServ 관련 문서들만이 저장된다. 설치과정이 끝난 후에는 이 곳에 docs라는 디렉토리만 생긴 것을 볼 수 있을 것이다. Jserv 모듈 자체는 아파치와 함께 컴파일되거나 아파치의 동적 모듈이 저장되는 곳(libexec)에 함께 저장된다. 그 외의 JServ 설정 파일들은 아파치 설정파일이 있는 디렉토리(conf) 안의 jserv란 디렉토리에 저장된다.

3.2 아파치 디렉토리

JServ를 동적 모듈로 만들기로 했다면 아파치가 설치되어 있는 곳을 알려주어야 한다. 동적 모듈을 만들 때 아파치에서 제공하는 apxs라는 툴을 사용하기 때문이다. JServ 1.1에서는 다음 옵션을 사용하여 apxs의 위치를 절대경로로 적어 주어야 한다.

--with-apxs=/path/to/apache/installation/bin/apxs

apxs는 아파치가 설치될 때 하위 디렉토리로 생성되는 bin 디렉토리에 있으므로 쉽게 찾을 수 있을 것이다.

JServ를 동적 모듈로 사용하지 않고 아파치에 직접 컴파일해 넣으려면 다음 옵션을 추가한다.

--with-apache-src=/path/to/apache/source

뒷 부분의 경로는 실제 자신의 씨스템에 맞춰 설정하여야 한다.

3.3 JDK

만일 JDK_HOME이나 JAVA_HOME 등의 환경 변수가 미리 정의되어 있다면 다음 설정으로 넘어가도 좋다. 하지만 그렇지 않다면 JDK가 있는 곳을 다음 옵션으로 알려주어야 한다.

--with-jdk-home=/path/to/jdk

3.4 JSDK

CLASSPATH 환경 변수가 JSDK를 사용할 수 있도록 설정되어 있지 않다면 다음 옵션으로 JSDK의 위치도 설정해 주어야 한다.

--with-JSDK=/path/to/jsdk.jar

필요한 모든 옵션을 주고 configure를 실행시키면 컴파일 준비가 끝난다. 이제 makemake install 명령을 실행시키면 컴파일 및 설치가 완료된다. 만일 아파치에 직접 컴파일해 넣는 방법을 쓰고 있다면 아파치도 설치하는 것을 잊지 말자. 이 경우 아파치의 configure 실행시에 다음 옵션을 주어야 한다.

--activate-module=src/modules/jserv/libjserv.a

다음 이전 차례