2011. 11. 21. 18:18ㆍUNIX & LINUX/AIX
컴파일 라이브러리는 우주곰 블로그를 참고 하였습니다.
http://uzoogom.tistory.com/trackback/182
phpize 사용이 목적이기 때문에 기본적인 컴파일 옵션만 사용하여 작업하였습니다.
php-cgi 가 아닌 DSO 방식이 필요한데 버그가 많습니다.
모두들 성공하시기를.....
# 아파치 컴파일
CC=gcc CXX=gcc CFLAGS=-O2 CXXFLAGS=-O2 ./configure -C --enable-so --prefix /usr/local/apache
# PHP 컴파일
# CFLAGS=-g0 gcc 버그로 인해 옵션을 넣어 주어야함
CC=gcc CXX=gcc CFLAGS=-g0 ./configure \
--prefix=/usr/local/php5 \
--with-apxs2=/usr/local/apache/bin/apxs --disable-cli
make
make clean
make install
# 수동으로 복사
# 컴파일 버그로 인해 수동으로 복사
cp .libs/libphp5* /usr/local/apache/modules/
# 내용 수정
# 컴파일버그로 인해 rm -f 검색으로 찾아 주석 처리
vi /usr/local/apache/build/instdso.sh
# 내용 수정
# 주석 삭제 DSO 방식으로 모듈 사용할 수 있게 컴파일 하였으므로 모듈을 추가 한다.
vi /usr/local/apache/conf httpd.conf
ServerName www.example.com:80
내용 추가
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
#LoadModule php4_module modules/libphp4.so
LoadModule php5_module modules/libphp5.so
# 내용 변경
User deamon
Group deamon
User nobody
Group nobody
:wq! # 저장 후 빠저 나감
# cd ../bin
# ./apachectl start
# ps -ef |grep httpd
root 463086 393314 0 17:44:30 pts/5 0:00 grep httpd
nobody 545010 602332 0 17:21:03 - 0:00 /usr/local/apache/bin/httpd -k start
nobody 565420 602332 0 17:21:03 - 0:00 /usr/local/apache/bin/httpd -k start
nobody 569580 602332 0 17:21:03 - 0:00 /usr/local/apache/bin/httpd -k start
root 602332 1 0 17:21:03 - 0:00 /usr/local/apache/bin/httpd -k start
nobody 639204 602332 0 17:21:03 - 0:00 /usr/local/apache/bin/httpd -k start
nobody 684216 602332 0 17:21:03 - 0:00 /usr/local/apache/bin/httpd -k start
# /usr/local/php5/bin/phpize
Configuring for:
PHP Api Version: 20041225
Zend Module Api No: 20060613
Zend Extension Api No: 220060519
DSO 동작 확인 완료