我正在尝试使用
安装pthreadsconfigure: error: pthreads requires ZTS, please re-compile PHP with ZTS enabled
但是我在安装过程中遇到了这个错误
getMax()
我搜索过此错误。似乎我必须在启用ZTS的情况下安装新版本的PHP。有没有更简单的方法来重新编译启用ZTS而不是重新安装PHP?
答案 0 :(得分:9)
以下是数字海洋社区引用的答案comment:
ZTS支持是配置时间选项,无法在运行时启用 时间。你需要用自己构建php
--enable-maintainer-zts
标志以启用它。执行此操作的一种方法是修改现有包并重建它。 首先,我们需要安装和下载一些东西:
安装构建依赖项:
sudo apt-get build-dep php5
安装开发人员工具:
sudo apt-get install devscripts
下载来源:
apt-get source php5
现在进入源目录并编辑debian / rules文件:
cd php5-5.5.9+dfsg/ # The version will be different depending on the Ubuntu release nano debian/rules
找到以。开头的部分
COMMON_CONFIG=--build=$(DEB_BUILD_GNU_TYPE) \
并添加以下内容 配置标志:--enable-maintainer-zts \ --enable-pthreads \
然后我们想要破解包的版本号,这样就可以了 高于存储库中的PHP版本。运行
dch -i
和 创建一个新的更改日志条目:php5 (5.5.9+dfsg-1ubuntu4.5+zts1) trusty; urgency=medium * Rebuild with ZTS support. -- You <doesnt@matter.com> Mon, 10 Nov 2014 13:14:32 -0500
现在可以使用以下命令构建包:
DEB_BUILD_OPTIONS=nocheck debuild
这需要一段时间,还需要一些内存。如果 你在一个512mb的服务器上,你可能需要添加一些交换。
它将在父目录中生成许多包:
cd .. ls *deb
您现在可以使用
sudo dpkg -i pakage_name.deb
或所有这些包sudo dpkg -i *deb
安装单个包