CentOS 6系でPHP 7.4をソースからビルドしてインストール

古いCentOS 6.x系のサーバーがあり、最新OSに移行しなければいけないですが移行できない理由があってそのサーバーでWordPressを利用する話があって、利用するテンプレートの要件がPHP 7.4以上となっています。
remiのレジストリを利用して「yum」を利用してもPHP 7.3までバージョンしかインストールできません。
PHP7.4をインストールするには、ソースからビルドしてインストールする必要がありますのでその手順を説明します

oniguruma をソースからビルドしてインストールする

PHPのソースからconfigureを実行した時に下記のエラーになるのでインストールに失敗します

configure: error: Package requirements (oniguruma) were not met:

oniguruma」が無いと上記のエラーになるので、onigurumaをインストールします

# cd /usr/local/src
# wget https://github.com/kkos/oniguruma/archive/refs/tags/v6.9.8.zip
# unzip v6.9.8.zip
# cd oniguruma-6.9.8/
# autoreconf -vfi

PKG_CONFIG_PATHの環境変数で「/opt/oniguruma/lib/pkgconfig」のライブラリを読み出すようにする。下記のコマンドですがPHP 7.4でモジュールを追加したい時に、configureで追加モジュールを指定してから、 make → make install が必要な時は再度実行する必要があります

# export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/oniguruma/lib/pkgconfig

 

PHP 7.4をインストール

PHP7.4をインストールするには、ソースからコンパイルする必要があります

1.PHPの7.4をダウンロードする

# cd /usr/local/src
# wget --no-check-certificate https://www.php.net/distributions/php-7.4.33.tar.gz

2.解凍して、対象のディレクトリに移動します

# tar xzvf php-7.4.33.tar.gz
# cd /usr/local/src/php-7.4.30

3.「configure」のオプションを追加します。PHP7.4では、 Sqlite3.7.4 以上が必要なります。別途インストールを試みましたがソースからインストールするとエラーとなり失敗したので、私の環境のWordPressではこの「Sqlite」は使用しないので除外します

$ sudo ./configure --with-apxs2=/usr/sbin/apxs --with-json 
  --enable-mbstring /
  --enable-gd 
  --with-pdo-mysql=mysqlnd /
  --with-mysqli=mysqlnd /
  --with-onig --enable-xml /
  --with-libxml-dir /
  --with-mysql-sock /
  --without-sqlite3 /
  --without-pdo-sqlite /
  --with-zlib --with-curl

4.make して make installします

# make
# make install

5.無事にインストールできたらapacheを再起動します

# /etc/init.d/httpd restart

 

LinuxCentOS 6,php

Posted by admin