如何安装和运行phpize


215

我一直打算将其安装ffmpeg为PHP安装程序的扩展。所以在我安装它之前,我需要phpize它。我是php5-dev由安装的sudo apt-get install 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

但是所有这些都已经安装。

找到config.m4没有返回任何内容。

任何指针如何在这里我可以得到phpize,因此,ffmpeg启动和运行?

Answers:


462

对于最新版本的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

yum install php-devel # see comments

9
如果使用yum而不是apt-get,则适当的软件包称为php-devel
cheepychappy 2013年

5
百胜在rhel / centos上安装php-devel
andrej

4
如何解决?在他说的问题中,他已经安装了php5-dev。
丹尼尔·W

53
对于PHP7,您可以使用php7.0-dev
Rahil Wazir

17
对于PHP7.1,使用php7.1-dev
尼诺Škopac

60

对于PHP7用户

7.1

sudo apt安装php7.1-dev

7.2

sudo apt安装php7.2-dev

7.3

sudo apt安装php7.3-dev

7.4

sudo apt安装php7.4-dev

如果不确定您的PHP版本,只需运行命令 php -v


11
您实际上不再需要键入apt-get。apt安装是一样的。易缓存不再需要再被任何类型的只是容易搜索
凯文Remisoski

在我的软件包列表中找不到php7.0-dev。很奇怪,我在列表中看到了php5-dev,但根本没有php7.0软件包。
所罗门·克洛森

@SolomonClosson这取决于您使用的操作系统版本。
M_R_K '17

1
如果您安装软件包php-dev,PHP将始终升级到最新的稳定版本。如果安装php7.0-dev并发布了PHP 7.1,通常不会升级到该版本。
MacroMan '18

22

哦,我通过键入/usr/bin/phpize而不是仅使它运行phpize


6
在这种情况下,/ usr / bin不在您的PATH中,但我猜应该在其中。做PATH=$PATH\:/usr/bin; export PATH,并且phpize将来会工作。
Berry Langerak 2012年

我收到此错误消息“找不到ffmpeg共享库。请确保使用--enable-shared选项将ffmpeg编译为共享库”。我正在使用此命令“ phpize”,但它正在运行,但是当我运行此命令时。“ / configure && make”这个错误来了
Chintan Gor 2014年

14

在Redhat Enterprise / CentOS下,用于yum安装php-devel模块:

yum install php-devel

对于PHP 7,您需要:

yum install php70-php-devel

1
No package php-devel available对我来说是结果。
幻影沃森

对于PHP7,我需要使用php70-php-devel
MECU

yum install php72-php-devel对于PHP 7.2
josef

2
并使用它ln -s /opt/remi/php72/root/bin/phpize /usr/bin/phpize
josef

7

嗯...实际上我不知道这是怎么解决的?但是以下步骤为我解决了问题:

find / -name 'config.m4'

现在查看config.m4是否在您要phpize的那个东西的文件夹中的任何位置。转到该文件夹​​,然后直接在其中运行phpize。


6

步骤-1:如果不确定所安装的php版本,请首先在终端中运行以下命令

php -v

输出:上面的命令将输出安装在您机器上的php版本,我的是7.2

PHP 7.2.3-1ubuntu1 (cli) (built: Mar 14 2018 22:03:58) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.3-1ubuntu1, Copyright (c) 1999-2018, by Zend Technologies

步骤2:然后安装phpize运行以下命令,因为我的php版本是7.2.3。我将其替换为7.2,因此命令将是

sudo apt-get install php7.2-dev

步骤3:完成!

备用方法(可选): 要基于计算机上安装的php版本自动安装phpize版本,请运行以下命令。

sudo apt-get install php-dev

此命令将自动检测已安装的php的适当版本,并将安装与之匹配的phpize。


5

对于使用PHP 7的Ubuntu 14.04LTS,请执行以下操作:

sudo apt-get install php-dev

然后安装:

pecl install memcache

请用反引号将您的代码位包装起来,以便将其显示为代码
YakovL

1
实际上,仅使用php-dev将安装当前为发行版发行并维护的版本。因此,在Ubuntu 12上它将安装php5-dev。
MacroMan

5

在Ubuntu 16.04中,可以phpize使用以下命令进行安装

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

相当于

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

2

linux终端安装

sudo apt-get install <php_version>-dev

范例:

sudo apt-get install php5-dev     #For `php` version 5
sudo apt-get install php7.0-dev   #For `php` version 7.0

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"到php.ini中(通常位于/etc/php5/apache2/php.ini

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

如有疑问,请检查您的Apache日志:

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

http.so是启动还是失败?



1

对于安装了Plesk的ubuntu apt-get install plesk-php56-dev,对于其他版本,只需在phpXX中更改XX(不带点)


1

如果在为您的PHP版本安装了相关的开发工具之后,在CentOS7.6上找不到phpize的问题,则此路径最终对我有用:

对于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扩展名的文件夹中运行此文件,例如

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

0

转到下载的文件夹,然后在其中找到config.m4。打开终端并运行phpsize。


0

例如,如果要对PHP 5.6使用“ phpize”命令,则应使用完整路径:代码:

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

0

我在2018年的macOS上遇到了这个确切的问题。

对我而言,先跑步brew install php后才sudo pecl install mongodb成功。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.