如何在CentOS 6.7上启用PHP5.6.13中的pthreads?
我已经通过IUS存储库在CentOS 6.7上安装了PHP5.6.13。这是如何在CentOS 6.7上启用PHP5.6.13中的pthreads?,php,pthreads,Php,Pthreads,我已经通过IUS存储库在CentOS 6.7上安装了PHP5.6.13。这是php-v命令的输出: # php -v PHP 5.6.13 (cli) (built: Sep 3 2015 11:54:03) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright
php-v
命令的输出:
# php -v
PHP 5.6.13 (cli) (built: Sep 3 2015 11:54:03)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies
with Xdebug v2.3.3, Copyright (c) 2002-2015, by Derick Rethans
对于安装和启用pthreads
,我必须遵循以下步骤:
# yum search pthreads
================================= N/S Matched: pthreads ===============================
mingw32-winpthreads-static.noarch : Static version of the MinGW Windows pthreads library
mingw64-winpthreads-static.noarch : Static version of the MinGW Windows pthreads library
php55u-pecl-pthreads-debuginfo.x86_64 : Debug information for package php55u-pecl-pthreads
php56u-pecl-pthreads-debuginfo.x86_64 : Debug information for package php56u-pecl-pthreads
mingw32-winpthreads.noarch : MinGW pthread library for the win32 target
mingw64-winpthreads.noarch : MinGW pthread library for the win64 target
openblas-threads.i686 : An optimized BLAS library based on GotoBLAS2, pthreads version
openblas-threads.x86_64 : An optimized BLAS library based on GotoBLAS2, pthreads version
php55u-pecl-pthreads.x86_64 : Threading API
php56u-pecl-pthreads.x86_64 : Threading API
#yum install php56u-pecl-pthreads.x86_64
Resolving Dependencies
--> Running transaction check
---> Package php56u-pecl-pthreads.x86_64 0:2.0.10-2.ius.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=======================================================================================================================================================================================================================================
Package Arch Version Repository Size
=======================================================================================================================================================================================================================================
Installing:
php56u-pecl-pthreads x86_64 2.0.10-2.ius.el6 ius 71 k
Transaction Summary
=======================================================================================================================================================================================================================================
Install 1 Package(s)
的位置。因此
确实去了:
#locate pthreads.so
/usr/lib64/php-zts/modules/pthreads.so
/etc/php.ini
:
extension=pthreads.so
extension=/usr/lib64/php-zts/modules/pthreads.so
zend_extension=pthreads.so
zend_extension=/usr/lib64/php-zts/modules/pthreads.so
# php -m | grep pthreads
Failed loading /usr/lib64/php-zts/modules/pthreads.so: /usr/lib64/php-zts/modules/pthreads.so: undefined symbol: core_globals_id
注意:我通过运行
phpinfo()
注意到线程安全性已禁用,是否需要启用该功能才能正确加载库?由于某些原因,存在两个不同的版本,您安装的版本与PHP版本冲突。与用于构建PHP本身的编译选项相比,pthreads.so使用的编译选项不匹配
php56u-pecl-pthreads.x86_64 0:2.0.10-2.ius.el6
您应该从同一源/版本中删除和安装所有内容。
这是我唯一能想到的
编辑:
你可以试试这个 由于某些原因,有两个不同的版本,您安装的版本与PHP版本冲突。与用于构建PHP本身的编译选项相比,pthreads.so使用的编译选项不匹配
php56u-pecl-pthreads.x86_64 0:2.0.10-2.ius.el6
您应该从同一源/版本中删除和安装所有内容。
这是我唯一能想到的
编辑:
你可以试试这个 你错了,同一个扩展有两个版本:php55u-pecl-pthreads.x86_64
用于php5u(意思是php5.5.x)和php56u-pecl-pthreads.x86_64
用于php56u(php5.6.x)安装的扩展是正确的,所以我这里缺少一些东西,我就是找不到是的,你说得有点对,我说的是这个特定的数字>0:2.0.10-2.ius.el6I没有跟上你,这个数字和PHP版本有什么问题吗?你的PHP版本是PHP5.6.13(cli)(构建:2015年9月3日11:54:03),但PHP构建与你的pthreads不兼容,例如:来自REMI的PHP和来自ius的安装pthreads,你会得到那个错误。。。这是一个极端的例子……这也不是问题所在,PHP和扩展都是从同一个存储库安装的,IUS:,你错了,同一个扩展有两个版本:php55u pecl pthreads.x86_64
用于php5u(意思是php5.5.x)和php56u pecl pthreads.x86_64
,用于php56u(PHP5.6.x)安装的扩展是正确的,所以我在这里遗漏了一些东西,我就是找不到。是的,你说的有一部分是对的,我说的是这个特定的数字>0:2.0.10-2.ius.el6I没有跟上你,这个数字和PHP版本有什么问题吗?你的PHP版本是PHP5.6.13(cli)(编译:2015年9月3日11:54:03)但是,构建的PHP与您的pthreads不兼容,例如:来自REMI的PHP和来自IUS的pthreads,您将得到该错误…这是一个极端的示例…这也不是问题所在,PHP和扩展都是从同一存储库安装的IUS:,