pecl の oci8 を更新する

pecl/oci8の新しいのが出ていたので、更新した話。

バージョンとしては、oci8/2.0.11 → 2.0.12 への更新。

リリース日は、2016-08-18 だったので、1年も気づいていなかった(´・ω・`)

PECL oci8
https://pecl.php.net/package/oci8

Changelog for oci8
https://pecl.php.net/package-changelog.php?package=oci8


【環境】
CentOS 6.9/7.4(PHPは標準リポジトリ


現在のバージョン

# pecl list
Installed packages, channel pecl.php.net:
=========================================
Package Version  State
oci8    2.0.11   stable


バージョンを指定して更新(バージョン2.1以降は、PHP7が必要)

# pecl upgrade oci8-2.0.12
downloading oci8-2.0.12.tgz ...
Starting to download oci8-2.0.12.tgz (191,954 bytes)
......................................done: 191,954 bytes
11 source files, building
running: phpize
Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525
・
・省略
・
Build process completed successfully
Installing '/usr/lib64/php/modules/oci8.so'
upgrade ok: channel://pecl.php.net/oci8-2.0.12
configuration option "php_ini" is not set to php.ini location
You should add "extension=oci8.so" to php.ini
Segmentation fault

CentOS 7の方だけ、何故か最後に「Segmentation fault」が出た。
気持ち悪いので、一度アンインストールして再インストールすることに。

# pecl uninstall oci8
Unable to remove "extension=oci8.so" from php.ini
uninstall ok: channel://pecl.php.net/oci8-2.0.12


バージョンを指定して再インストール・・・したらエラーが出なかったので良し。

# pecl install oci8-2.0.12


バージョンの確認

# pecl list
Installed packages, channel pecl.php.net:
=========================================
Package Version  State
oci8    2.0.12   stable


モジュールを読み直すために、httpdを再起動

CentOS 7
# systemctl restart httpd.service

CentOS 6
# /etc/init.d/httpd restart