环境:
System: ubuntu 16.0.4 LTS x64
PHP: php-7.1.0
MySQL: mysql-5.7.x
Apache: Apache2.4.25
pthread
版本:php_pthreads-3.1.6-7.0-ts-vc14-x64
(适用于 php7)
php
编译安装时的选项:
cd phpDir
./configure --with-apxs2=/usr/local/apache2/apxs
--with-config-file-path=/usr/local/bin/lib/php/config
--with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd
--with-openssl
--enable-mbstring
--enable-ftp
--enable-pcntl
--enable-sockets
--enable-zip
--enable-mysqlnd
--enable-maintainer-zts
--enable-tsrm-pthreads
make
make install
关于 --enable-maintainer-zts
的解释:
PHP ZTS
已开启,后面这个 posix 头文件(pthread.h)
我在 /usr/local/include/pthread.h
中找到了。
关于 --enable-tsrm-pthreads
的解释:
然后,我编译生成 pthreads.so
文件时的做法:
sudo mv pthreads ./phpDir/ext # 将下载的 pthreads 移动到 php 源码包下的扩展目录
cd phpDir/ext/pthreads
sudo phpize # 成功生成 configure 文件
sudo ./configure # 成功
sudo make # 失败!
sudo make install # 未执行
sudo make
编译时的错误很多:
最后的错误提示:
Makefile:196: recipe for target 'php_pthreads.lo' failed
make: *** [php_pthreads.lo] Error 1
我已经很无奈了。应该来说, php 版本和pthreads版本是对应的。然后,各种设置应该也符合要求,就是不知道为什么无法成功生成 pthreads.so
??
网络上各种添加 ubuntu 下 php 添加 pthreads
都看过,就是没找到解决办法!求解决!??
该问题已解决。下载 github 上的 pthreads 扩展即可,pecl 官网里面的扩展有问题 :http://pecl.php.net/package/p...