你如何安装Libevent for PHP?

时间:2014-04-21 18:07:17

标签: php debian libevent

我在Debian 7 64bit桌面上安装了libevent-dev库:

$ sudo aptitude install -y libevent-dev

然后我安装了PECL库

$ pecl list
Installed packages, channel pecl.php.net:
=========================================
Package  Version State
libevent 0.1.0   beta

我重新启动了PHP和操作系统,但是PHP并没有将libevent列为phpinfo()的已安装分机,当我尝试使用它时,我得到"PHP Fatal error: Call to undefined function event_base_new()"

你如何安装Libevent?

3 个答案:

答案 0 :(得分:7)

安装Libevent for PHP 5.X

sudo apt-get install libevent-dev
sudo pecl install libevent-beta

sudo su
sudo echo 'extension=libevent.so' > /etc/php5/mods-available/libevent.ini
exit

sudo ln -s /etc/php5/mods-available/libevent.ini /etc/php5/fpm/conf.d/
sudo ln -s /etc/php5/mods-available/libevent.ini /etc/php5/cli/conf.d/

sudo service php5-fpm restart

安装Libevent for PHP 7.X

此时pecl包libevent不适用于php 7

https://pecl.php.net/package/libevent

所以让我们编译它。

下载大师: https://github.com/expressif/pecl-event-libevent

解压缩到:/ tmp / install_libevent

cd /tmp/install_libevent/pecl-event-libevent-master
sudo phpize
sudo ./configure

在此步骤之后滚动我们的控制台窗口并尝试查找任何警告或错误。我收到一条警告 - 需要安装re2c软件包。

sudo make
sudo make install

sudo su
sudo echo 'extension=libevent.so' > /etc/php/7.0/mods-available/libevent.ini
exit

sudo ln -s /etc/php/7.0/mods-available/libevent.ini /etc/php/7.0/fpm/conf.d/20-libevent.ini
sudo ln -s /etc/php/7.0/mods-available/libevent.ini /etc/php/7.0/cli/conf.d/20-libevent.ini

sudo service php7.0-fpm restart

答案 1 :(得分:1)

我已经成功安装了它。 这些是步骤:

apt-get install libevent-dev 
sudo pecl install libevent

编辑:当您被要求提供libevent安装目录(自动检测)

时按Enter键

在* .ini文件中添加extension=libevent.so,以便加载它。例如,如果您希望始终加载此扩展,请创建一个libevent.ini文件,其中您的php5 mod是(在我的计算机中它们位于/etc/php5/mods-available/)并写入extension=libevent.so。然后使用php5enmod libevent启用此模块。这page可能会对您有所帮助。

答案 2 :(得分:0)

extension=libevent.so添加到php.ini。