Software Workshop

가급적 패키지 매니저를 이용하여 설치하는 것을 권장하지만, 소스코드 빌드를 해야 하는 경우에 다음과 같은 과정에 따라 빌드할 수 있음

APR

apr-1.5.2 사용

./configure
make
sudo make install

APR-util

apr-util-1.5.4 사용

./configure --with-apr=../apr-1.5.2
make
sudo make install

Apache

apache-2.2.31 사용

./configure --prefix=/home/terzeron/apps/httpd-2.2.31 --with-apr=../apr-1.5.2 --with-apr-util=../apr-util-1.5.4 --enable-so
make all install
ln -sf /home/terzeron/apps/httpd-2.2.27 /home/terzeron/apps/apache2

CMake

이 단계는 mysql을 설치할 때만 필요함

sudo yum install cmake

MySQL

  1. 이 단계는 생략 가능함 (mysqlnd를 사용하면)
  2. 5.6.21 community 버전 서버 사용
  3. client는 5.6.26으로 설치
tar xvfz mysql-5.6.26.tar.gz
cd mysql-5.6.26
cmake -DCMAKE_INSTALL_PREFIX:PATH=/home/terzeron/apps/mysql-5.6.26
make
make install

PHP

5.3에서는 외부 모듈 (for testing)과의 호환성 문제가 있어서 5.6.14 선택

./configure --prefix=/home/terzeron/apps/php-5.6.14 --with-iconv --enable-mbstring --with-pear --with-libdir=lib64 --with-apxs2=/home/terzeron/apps/apache2/bin/apxs --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gettext=shared
make all install
ln -sf /home/terzeron/apps/php-5.6.13 /home/terzeron/apps/php
cp php.ini.production /home/terzeron/apps/php/lib/php.ini

php.ini를 편집하여 다음 항목을 수정

date.timezone = Asia/Seoul
extension_dir = "/home/terzeron/apps/php/modules"
extension = gettext.so
short_open_tag = On

gettext.so 복사
빌드 디렉토리(pkgs/php-…)에는 모듈이 만들어졌는데 apps에 설치가 안 되어있을 수 있음

Apache

Apache의 httpd.conf 수정

User terzeron
Group terzeron
DocumentRoot "/home/terzeron/deploy/idms-web"
... 

Apache의 mime.types 수정

application/x-httpd-php php phtml nhn inc fcc
application/x-httpd-php-source phps

bin/envvars 편집

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:추가할경로
export PATH=$PATH:추가할경로