PHPでUUIDを生成するための拡張モジュールをインストール

uuid_phpPHPでUUID(Universally Unique Identifier)を生成したかったときの覚書。

環境: CentOS 6.5, nginx 1.6.0, PHP 5.4.28

コマンドラインツール(pecl)をインストールする
# yum install php-devel php-pear

検索してインストール
# pecl search uuid
# pecl install uuid

エラー

configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.
ERROR: `/var/tmp/uuid/configure --with-uuid' failed

コンパイラがないらしい。
# yum install gcc
# pecl install uuid

またエラー

configure: error: 'uuid/uuid.h' header not found
ERROR: `/var/tmp/uuid/configure --with-uuid' failed

uuid用のライブラリがないらしい。yumで検索してインストール。
# yum search uuid
# yum install libuuid-devel
# pecl install uuid

成功

Build process completed successfully
Installing '/usr/lib64/php/modules/uuid.so'
install ok: channel://pecl.php.net/uuid-1.0.3
configuration option "php_ini" is not set to php.ini location
You should add "extension=uuid.so" to php.ini

 

# vi /etc/php.d/uuid.ini

extension=uuid.so

# /etc/rc.d/init.d/php-fpm restart

phpinfo確認
# php -i | less

提供されているメソッドをヘッダーファイルで確認。

UUID v4を試してみる。
# php -r "echo uuid_create(UUID_TYPE_RANDOM);"

 

インストールしてはみたが、コンパイルして環境を整えるほどのことでもないので、この方法は止めた。

アンインストール
# rm /etc/php.d/uuid.ini
# pecl uninstall uuid
# /etc/rc.d/init.d/php-fpm restart

 

< Related Posts >