2009年1月29日木曜日

re2c のインストール

[root@xx ~]# mv /etc/yum.repos.d/Dag.repo.bak /etc/yum.repos.d/Dag.repo
[root@xx ~]# yum install re2c
[root@xx ~]# mv /etc/yum.repos.d/Dag.repo /etc/yum.repos.d/Dag.repo.bak

PDO-OCI

[root@xx ~]# cd /usr/local/src/
[root@xx src]# wget http://pecl.php.net/get/PDO_OCI-1.0.tgz
[root@xx src]# tar xvfz PDO_OCI-1.0.tgz
[root@xx src]# cd PDO_OCI-1.0
[root@xx PDO_OCI-1.0]# phpize
[root@xx PDO_OCI-1.0]# ./configure --with-pdo-oci=instantclient,/usr,10.2.0.4
[root@xx PDO_OCI-1.0]# make
[root@xx PDO_OCI-1.0]# make install
[root@xx PDO_OCI-1.0]# echo 'extension=pdo_oci.so' >> /etc/php.d/pdo.ini
[root@xx PDO_OCI-1.0]# apachectl restart

■php.ini の設定
[root@xx ~]# vi /etc/php.d/pdo_oci.ini
; Enable pdo_oci extension module
extension=pdo_oci.so

Zend Optimizer

1. ダウンロード
http://www.zend.co.jp/download/index.html

2. FTP にて cmpo のホームへコピー

3. 解凍
[root@xx ~]# cd /usr/local/src/
[root@xx src]# mv ~cmpo/ZendOptimizer-3.3.0a-linux-glibc23-x86_64.tar.gz .
[root@xx src]# tar -xvzf ZendOptimizer-3.3.0a-linux-glibc23-x86_64.tar.gz

4. コンパイル
[root@xx src]# cd ZendOptimizer-3.3.0a-linux-glibc23-x86_64
[root@xx ZendOptimizer-3.3.0a-linux-glibc23-x86_64]# ./install
基本的に全部デフォルト設定

保存場所: /usr/local/Zend

これによって /etc/php.ini はシンボリックリンクとなる
実体は /usr/local/Zend/etc/php.ini
※旧 php.ini は /etc/php.ini-zend_optimizer.bak としてバックアップ

Oracle Instant Client のインストール

1. Windows でダウンロード
http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxx86_64soft.html

Version 10.2.0.4
http://download.oracle.com/otn/linux/instantclient/10204/oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm
http://download.oracle.com/otn/linux/instantclient/10204/oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm

2. FTP で hoge のホームにコピー

3. 展開
[root@xx ~]# cd /usr/local/src/
[root@xx src]# mv ~hoge/oracle-instantclient-* .
[root@xx src]# rpm -ivh oracle-instantclient-basic-10.2.0.4-1.x86_64.rpm
[root@xx src]# rpm -ivh oracle-instantclient-devel-10.2.0.4-1.x86_64.rpm

■ディレクトリー名の変更
[root@xx ~]# mv /usr/include/oracle/10.2.0.4/client64 /usr/include/oracle/10.2.0.4/client
[root@xx ~]# mv /usr/lib/oracle/10.2.0.4/client /usr/lib/oracle/10.2.0.4/client
※ 64bit 版は client64 にインストールするが PDO_OCI の configure スクリプトは client 決め打ちなのでディレクトリー名を変更する

■apache 環境変数の設定
[root@xx ~]# vi /etc/sysconfig/httpd

# ORACLE
export ORACLE_BASE=/usr/lib/oracle
export ORACLE_HOME=$ORACLE_BASE/10.2.0.4/client
# Oracleの文字化け(SJIS)
export NLS_LANG=Japanese_Japan.JA16SJIS
# ライブラリーのロード先を指定
if [ $?LD_LIBRARY_PATH ]
then
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
else
LD_LIBRARY_PATH=$ORACLE_HOME/lib
fi
export LD_LIBRARY_PATH

■ユーザーの環境変数設定
[root@xx ~]# vi /etc/profile.d/oracle.sh

export ORACLE_BASE=/usr/lib/oracle
export ORACLE_HOME=$ORACLE_BASE/10.2.0.4/client
export NLS_LANG=Japanese_Japan.JA16SJIS
if [ $?LD_LIBRARY_PATH ]
then
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
else
LD_LIBRARY_PATH=$ORACLE_HOME/lib
fi
export LD_LIBRARY_PATH

[root@xx ~]# chmod 755 /etc/profile.d/oracle.sh

mcrypt のインストール

[root@xx ~]# mv /etc/yum.repos.d/Dag.repo.bak /etc/yum.repos.d/Dag.repo
[root@xx ~]# yum install libmcrypt-devel
[root@xx ~]# mv /etc/yum.repos.d/Dag.repo /etc/yum.repos.d/Dag.repo.bak

HTTP/Request のインストール

[root@xx ~]# pear install HTTP_Request

PHP ZipArchive のインストール

[root@xx ~]# yum -y install zlib-devel
※今回はすでに入っていた

[root@xx ~]# pecl install zip

○php.ini の編集
[root@xx ~]# vi /etc/php.d/zip.ini
; Enable zip extension module
extension = zip.so

PHP

■php 本体
[root@xx ~]# yum install php
※今回はすでに入っていた

■エクステンション
[root@xx ~]# yum install php-mbstring
※今回はすでに入っていた
[root@xx ~]# yum install php-pdo
※今回はすでに入っていた
[root@xx ~]# yum -y install php-pear
※今回はすでに入っていた

php-mcrypt のインストール

[root@xx ~]# yum -y install libmcrypt-devel

○CentOS 用の mcrypt.so を FTP でコピー
[root@xx ~]# cp mcrypt.so /usr/lib64/php/modules/mcrypt.so
※ ソースからコンパイルすれば作れたようですがよくわからないので別に用意した CentOS サーバーからファイルをコピーしてきました。

○php.ini の編集
[root@xx ~]# vi /etc/php.d/mcrypt.ini
; Enable mcrypt extension module
extension=mcrypt.so

dag リポジトリーの準備

[root@xx ~]# vi /etc/yum.repos.d/Dag.repo.bak
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el5/en/$basearch/dag
gpgcheck=1
#gpgkey=http://ftp.riken.jp/Linux/dag/packages/RPM-GPG-KEY.dag.txt
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt

※昨年までは問題なかったのだが 2009 年になって http://ftp.riken.jp/Linux/dag/packages/RPM-GPG-KEY.dag.txt が見つからないと言われエラーになる
※ヤクザではあるが http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt でごまかし警告が出ても無視してインストールを続ける

コンパイラー等のインストール

[root@xx ~]# yum install php-devel
[root@xx ~]# yum groupinstall "Development Tools" "Development Libraries"

Redhat Enterprise 5.2 設定記

おとぼけ運用会社のI社が設定した RHEL5.2 にアプリをインストールした記録を残します。

プロローグ
PHPアプリをインストールするにあたり Zend Optimizer が必要なのでそのインストールを依頼。
何を思ったのか Zend Framework を入れる…
Zend Optimizer だと伝えると Zend Core をインストール…

まぁ Zend Core なら Optimizer も入っているのでよいかと思いコマンドラインから php と入れてみる

@@大量のエラー…

apachectl -t と入れてみる

@@またもやエラー…

RHEL の Apache + PHP がすでに入っている環境に Zend Core + Zend Core バンドル Apache を入れたらしい…どうすればよいか尋ねたところコマンドすべてフルパスで指定しろとの返事…

一旦頓挫したアプリインストールですが、クライアントからの指示で再インストールと言うことになりました(いちおう一安心)

とはいうものの、おとぼけI社の事です。この先どうなる事やら…