PHP7中的PECL yaml
PHP7中的pecl yaml存在一些问题(请参阅下面的错误日志)。我在上面看到的是:2.0版的一些RC被认为涵盖了这个问题。。。我当前正在运行以下命令:PHP7中的PECL yaml,yaml,pecl,php-7,Yaml,Pecl,Php 7,PHP7中的pecl yaml存在一些问题(请参阅下面的错误日志)。我在上面看到的是:2.0版的一些RC被认为涵盖了这个问题。。。我当前正在运行以下命令: pecl install yaml && echo "extension=yaml.so" > /usr/local/etc/php/conf.d/ext-yaml.ini. 但我猜这不会安装RC版本如何安装RC?是否提供参数 我可以用谷歌搜索以下解决方案(未经测试): 但我想这将为所有扩展设置一
pecl install yaml && echo "extension=yaml.so" > /usr/local/etc/php/conf.d/ext-yaml.ini.
但我猜这不会安装RC版本如何安装RC?是否提供参数
我可以用谷歌搜索以下解决方案(未经测试):
但我想这将为所有扩展设置一个全局beta状态。我只想以beta版安装此扩展
错误日志
运行:生成
/bin/bash/tmp/pear/temp/pear build defaultuserPVGidl/yaml-1.2.0/libtool--mode=compile cc-I.-I/tmp/pear/temp/yaml-DPHP_ATOM_INC-I/tmp/temp/pear build defaultuserPVGidl/yaml-1.2.0/include-I/tmp/pear build defaultuserPVGidl/yaml-1.2.0/main-I/tmp/pear/pear-temp/pear/temp/temp/yaml-I/usr/local/local/include/php/main-I/usr/local/include/php/TSRM-I/usr/local/include/php/usr/local/include/php/ext-I/usr/local/include/php/ext/date/lib-DHAVE_CONFIG_H-g-O2-c/tmp/pear/temp/yaml/yaml.c-o yaml.lo
mkdir.libs
cc-I.-I/tmp/pear/temp/yaml-DPHP_ATOM_INC-I/tmp/pear/temp/pear build defaultuserPVGidl/yaml-1.2.0/include-I/tmp/pear/temp/yaml-build defaultuserPVGidl/yaml-1.2.0/main-I/tmp/pear/temp/yaml-I/usr/local/include/php-I/usr/local/include/php/main-I/usr/local/include/php/TSRM-I/usr/local/include/php-I/usr/local/include/php/ext/date/lib-DHAVE_CONFIG_H-g-O2-c/tmp/pear/temp/yaml/yaml.c-fPIC-DPIC-o.libs/yaml.o
在/tmp/pear/temp/yaml/yaml.c:35:0中包含的文件中:
/tmp/pear/temp/yaml/php_yaml.h:56:40:致命错误:ext/standard/php_smart_str.h:没有这样的文件或目录
#包括
^
编译终止。
Makefile:195:目标'yaml.lo'的配方失败
make:**[yaml.lo]错误1
错误:`make'失败
因此,在进行了一些额外的谷歌搜索之后,我通过搜索如何安装测试版软件包找到了如何安装,而不是像我第一次寻找的那样搜索RC面部手掌
…因此正确的命令应该是:
pecl install yaml-beta && echo "extension=yaml.so" > /usr/local/etc/php/conf.d/ext-yaml.ini
Stable 2.0.0于2016年9月24日发布。版本1.x.x仍然受支持,因此您需要指定版本号,例如:
pecl install yaml-2.0.0 && echo "extension=yaml.so" > /usr/local/etc/php/conf.d/ext-yaml.ini
在上查找最新版本到目前为止还不错,答案不适用于我的Centos 7 PHP 7 但我想怎么做:
yum install php70w-devel php70w-pear zlib-devel curl-devel gcc
yum install libyaml-devel
pecl install yaml-beta
我希望这也能帮助其他使用Centos的用户。在ubuntu 16.04(PHP7.0)上,您可以这样做:
apt install libyaml-dev php-dev php-pear
pecl install yaml-2.0.0
echo "extension=yaml.so" > /etc/php/7.0/cli/conf.d/20-yaml.ini
echo "extension=yaml.so" > /etc/php/7.0/apache2/conf.d/20-yaml.ini
- 使用
命令需要pecl
php-pear
命令(由pecl使用)需要phpize
php dev
是。。。亚马尔图书馆libyaml-dev
yaml-beta
解决了这个问题(并对答案进行了投票),但最近我再次遇到了错误,并用yaml-2.0.0
修复了它(与编辑的答案相同)我使用的是pecl-install-yaml
,我刚刚改为pecl-install-yaml-2.0.0
,它成功了,谢谢。。。但是我的php说yaml函数不可用,phpinfo没有显示任何yaml扩展…好的,找到了原因。。。没有将conf.d文件添加到相应的文件夹。。。如果你的处境和我一样,请遵循以下说明:救生员,谢谢!!有人能帮我解决类似的问题吗?
yum install php70w-devel php70w-pear zlib-devel curl-devel gcc
yum install libyaml-devel
pecl install yaml-beta
apt install libyaml-dev php-dev php-pear
pecl install yaml-2.0.0
echo "extension=yaml.so" > /etc/php/7.0/cli/conf.d/20-yaml.ini
echo "extension=yaml.so" > /etc/php/7.0/apache2/conf.d/20-yaml.ini