ubuntu 下php5重新编译支持多线程pthread扩展问题求解!

剑魂琴心 发布于 2017/03/19 17:44
阅读 168
收藏 0

小弟参照官方和网上热心程序猿帖子,进行了如下操作:
1、去php官网:http://php.net/downloads.php 下载了php-5.6.30.tar.bz2 源代码。
2、解压后进入目录执行如下操作
1)配置php编译参数
./configure --prefix=/usr/local/php5  --with-config-file-path=/usr/local/php5/etc  --enable-opcache --enable-cli  --enable-zip  --enable-fpm --enable-mbstring --enable-ftp --with-zlib --with-iconv  --with-curl   --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-soap --enable-xml --with-xmlrpc --enable-sockets --enable-maintainer-zts  –with-tsrm-pthreads 
补充: --enable-maintainer-zts 这里加了php官方提示的支持多线程的参数,热心网友也是这样提示的。

2)生成makefile
./buildconf --force

3)make clean

4)编译源码
make 

5)安装
make install

6)后续配置
sudo cp '/home/jianhunqinxin/Downloads/php-5.6.30/php.ini-production' '/usr/local/php5/etc/php.ini'


sudo apt-get install libapache2-mod-php5

7)phpinfo函数打印

 

如图依然是 thread safety disabled    nts

有哪位遇到相同问题了吗?整个过程没有遇到错误,(任何提示error的包依赖都解决了,并且重新执行到没有error为止)。
为什么我怎么编译php源码都依然是nts呢?线程安全版的php在linux下应该如何编译出来?

补充下:
1、小弟是真的不能不用pthread来做多线程而去用swoole的,因为我只需要多线程的一点功能,而且还仅仅是来辅助的。
2、不存在以前php5没有写在干净的可能,因为我find -name *php5* 都删掉了,甚至最后直接换了新的ubuntu系统来操作也没有解决。

加载中
返回顶部
顶部