PHP pthreads 拡張
2017年1月2日 (月) 20:05時点におけるKusakata (トーク | 投稿記録)による版 (ページの作成:「Category:プログラミング言語 en:PHP pthreads extension POSIX のマルチスレッドを使いたい場合は pthreads 拡張が必要です。{{ic|pecl}}...」)
POSIX のマルチスレッドを使いたい場合は pthreads 拡張が必要です。pecl
を使って pthreads (http://pecl.php.net/package/pthreads) 拡張をインストールする場合はスレッドセーフサポートフラグ --enable-maintainer-zts
を有効にしてコンパイルされた PHP が必要になります。適切なフラグを付けてオリジナルのパッケージを再ビルドするのが一番簡単です。
php パッケージに依存しているパッケージを確認してください。例:
$ pacman -Qii php
:: php-apache: requires php :: php-apcu: requires php :: php-mcrypt: requires php :: php-pear: requires php :: php-pgsql: requires php
'php' を含む全てのパッケージを削除してください。例:
# pacman -R php php-apache php-apcu php-mcrypt php-pear php-pgsql
Arch Linux の公式パッケージリポジトリを複製:
$ cd /opt/ $ git clone git://projects.archlinux.org/svntogit/packages.git $ cd packages/php/repos/extra-x86_64
スレッドサポートを追加するための変更を PKGBUILD に加えてください:
PKGBUILD
... --with-xsl=shared \ --with-zlib \ --enable-maintainer-zts ...
新しいパッケージを作成:
$ makepkg -s
削除したパッケージをインストール:
# pacman -U \ php-5.5.8-1-x86_64.pkg.tar.xz \ php-apache-5.5.8-1-x86_64.pkg.tar.xz \ php-mcrypt-5.5.8-1-x86_64.pkg.tar.xz \ php-pear-5.5.8-1-x86_64.pkg.tar.xz \ php-pgsql-5.5.8-1-x86_64.pkg.tar.xz
pthreads をインストール:
# pecl install pthreads