我一直想安装ffmpeg作为我的PHP设置的扩展。在安装它之前,我需要phpize它。我通过sudo apt-get install php5-dev安装了php5-dev。但现在当我运行phpize时,我得到以下错误:

phpize
Cannot find config.m4. 
Make sure that you run '/usr/bin/phpize' in the top level source directory of the module

php.ini的位置是/usr/local/zend/etc/php.ini

我从另一个在线资源上尝试了这个方法

sudo apt-get install autoconf automake libtool m4

但是它们都已经安装好了。

定位配置。M4没有返回任何东西。

这里有什么提示吗,如何让phpize和ffmpeg启动并运行?


当前回答

2018年,我在macOS上遇到了这个问题。

对我来说,在sudo pecl install mongodb之前,首先运行brew install php就成功了。

其他回答

在Ubuntu 16.04中,可以通过命令安装phpize

aptitude install php7.1-dev // for php 7.1

这相当于

apt-get install php7.1-dev // for php 7.1

这可能会帮助ubuntu上的某些人。没有承诺。

sudo apt-get install libcurl3 php5-dev libcurl4-gnutls-dev libmagic-dev
sudo apt-get install php-http make
sudo pecl install pecl_http

并添加“extension=http.”so" to php.ini(通常位于/etc/php5/apache2/php.ini)

然后重启Apache (sudo service apache2 restart)。

如果有疑问,请检查apache日志:

sudo su --
cd /var/log/apache2
tail -25 error.log

是http。开始还是失败?

如果你有phpize在CentOS7上找不到的问题。在你为你的PHP版本安装了相关的开发工具后,这个路径最终对我有用:

对于PHP 7.2.x

/opt/cpanel/ea-php72/root/usr/bin/phpize

对于PHP 7.3.x

/opt/cpanel/ea-php73/root/usr/bin/phpize

对于PHP 7.4.x

/opt/cpanel/ea-php74/root/usr/bin/phpize

在包含下载的PHP扩展的文件夹中运行它,例如下面的第3行:

基于安装PHP v7.3的示例。x Brotli扩展https://github.com/kjdev/php-ext-brotli

git clone --recursive --depth=1 https://github.com/kjdev/php-ext-brotli.git
cd /php-ext-brotli
/opt/cpanel/ea-php73/root/usr/bin/phpize
./configure --with-php-config=/opt/cpanel/ea-php73/root/usr/bin/php-config
make
make test

对于最新版本的Debian/Ubuntu (Debian 9+或Ubuntu 16.04+),安装php-dev依赖包,它将自动为您的发行版安装正确版本的php{x}-dev:

sudo apt install php-dev

旧版本的Debian/Ubuntu:

对于PHP 5,它在php5-dev包中。

sudo apt-get install php5-dev

对于PHP 7。X(来自rahilwazir的评论):

sudo apt-get install php7.x-dev

RHEL / CentOS /百胜

yum install php-devel # see comments

对于ubuntu 14.04LTS与php 7,发布:

sudo apt-get install php-dev

然后安装:

pecl install memcache