我想在Ubuntu 12.04上安装PHP5.5的v8js扩展,但无法使其正常工作。
当我尝试使用PECL安装v8js扩展版本0.2.0(最新版本)时,我收到此消息:
configure:error:libv8必须是3.24.6或更高版本 错误:`/ tmp / pear / temp / v8js / configure --with-v8js'失败
如果我尝试安装旧版本,则会出现编译错误。此消息与我的问题非常相似:Install v8js for php on ubuntu
如何解决此问题?
编辑:我无法使用PHP5.5在Ubuntu 14.04上安装它,即使PHP将PHP降级降级到PHP 5.4。但是,使用Ubuntu 12.04和PHP 5.4非常有效。在Ubuntu 12.04上,我没有尝试从PHP 5.5降级到5.4。答案 0 :(得分:4)
如果找不到libv8-dev
或libv8-dbg
,您可以通过运行命令找到正确的版本
~$ apt-cache search libv8
libv8-3.14-dbg - V8 JavaScript engine - debugging symbols
libv8-3.14-dev - V8 JavaScript engine - development files for 3.14 branch
libv8-3.14.5 - V8 JavaScript engine - runtime library
libv8-dev - V8 JavaScript engine - development files for latest branch
然后你可以运行
~$ sudo apt-get install libv8-3.14-dev libv8-3.14-dbg g++ cpp
然后您可以尝试通过运行
通过pecl安装v8js~$ sudo pecl install v8js-0.2.0
如果该命令返回错误
configure: error: libv8 must be version 3.24.6 or greater
ERROR: `/tmp/pear/temp/v8js/configure --with-v8js' failed
您可以尝试通过运行
来安装v8js-0.1.3
~$ sudo pecl install v8js-0.1.3
然后修改您的php.ini
以添加v8js
扩展名
~$ echo "extension=v8js.so" >> /etc/php5/cli/php.ini
答案 1 :(得分:2)
打开终端/控制台
sudo apt-get install libv8-dev libv8-dbg g++ cpp
进行更新sudo apt-get update
尝试sudo pecl install v8js-0.2.0
(或其他版本,即:sudo pecl install v8js-0.1.3
)
通过添加:php.ini
来修改extension=v8js.so
(检查:Where is my php.ini file?)文件。
重启服务器
如果扩展程序仍无效,请尝试编辑/etc/php5/conf.d/v8js.ini
并添加extension=v8js.so
并重新启动服务器。
希望这有帮助。
答案 2 :(得分:0)
这些其他答案效果很好,过去1。5年我使用了v8js-0.1.3但是在需要升级到PHP 7后我需要一个更好的解决方案,因为v0.1.3不能用PHP 7编译(与之相关) php_smart_str被重命名为php_smart_string)。
经过几个小时令人沮丧的研究并自己编译libv8后,我不想在我配置的每台服务器上完成整个过程。
无论如何,我发现this site指向launchpad PPA site,它提供了几个不同的ubuntu软件包以及5.1和5.2 libv8库。
我运行了这些命令(请不要在不了解风险的情况下添加第三方开发者的存储库)。
sudo apt-add-repository ppa:pinepain/libv8-5.2
sudo apt-get update
sudo apt-get install libv8-5.2-dev
sudo pecl install v8js-1.1.0
(感谢@JeyKeu建议为这些命令添加“apt-get update”)
我无法获得v8js-1.3.0或1.2.0来构建,但1.1.0运行良好。我检查了更改日志,发现无论如何都不需要最新的更新。