Cómo instalar y ejecutar phpize

215

He tenido la intención de instalar ffmpegcomo una extensión de mi configuración de PHP. Entonces, antes de poder instalarlo, lo necesito phpize. Lo instalé php5-devpor sudo apt-get install php5-dev. Pero ahora cuando ejecuto phpizeme sale el siguiente error:

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

La ubicación de mi php.ini es /usr/local/zend/etc/php.ini

Desde otro recurso en línea probé esto

sudo apt-get install autoconf automake libtool m4

Pero todos ellos ya están instalados.

Localizar config.m4 no devolvió nada.

¿Alguna sugerencia aquí cómo puedo obtener phpizey, ffmpegpor lo tanto, en marcha?

Hrishikesh Choudhari
fuente

Respuestas:

464

Para versiones recientes de Debian / Ubuntu (Debian 9+ o Ubuntu 16.04+) instale el php-devpaquete de dependencia, que instalará automáticamente la versión correcta de php{x}-devsu distribución:

sudo apt install php-dev

Versiones anteriores de Debian / Ubuntu:

Para PHP 5, está en el paquete php5-dev.

sudo apt-get install php5-dev

Para PHP 7.x (del comentario de rahilwazir):

sudo apt-get install php7.x-dev

RHEL / CentOS / yum

yum install php-devel # see comments
Apagón
fuente
99
si usa yum en lugar de apt-get, el paquete apropiado se llama php-devel
cheepychappy
55
yum instalar php-devel en rhel / centos
andrej
44
¿Cómo puede ser esta la solución? En la pregunta que dijo, ya instaló php5-dev.
Daniel W.
53
Para PHP7, puede usarphp7.0-dev
Rahil Wazir el
17
Para PHP7.1, usephp7.1-dev
Nino Škopac
62

Para usuarios de PHP7

7.1

sudo apt install php7.1-dev

7.2

sudo apt install php7.2-dev

7.3

sudo apt install php7.3-dev

7.4

sudo apt install php7.4-dev

Si no está seguro acerca de su versión de PHP, simplemente ejecute el comando php -v

M_R_K
fuente
12
ya no necesitas escribir apt-get. apt install es lo mismo. apt-cache ya no necesita ser mecanografiado ya sea solo apt search
Kevin Remisoski
php7.0-dev no se encuentra en la lista de paquetes para mí. Extraño, veo php5-dev en la lista, pero no hay paquetes php7.0 en absoluto.
Solomon Closson
@SolomonClosson Depende de la versión del sistema operativo que utilice.
M_R_K
1
Si instala el paquete php-dev, PHP siempre se actualizará a la última versión estable. Si instala php7.0-dev y se lanza PHP 7.1, generalmente no se lo actualizará.
MacroMan
¿Podría actualizar su respuesta y agregar la solución para PHP 8? Ahora que PHP8 alpha 1 está aquí ...
7ochem hace
22

Ohk ... Lo puse en funcionamiento escribiendo en /usr/bin/phpizelugar de solo phpize.

Hrishikesh Choudhari
fuente
77
En cuyo caso / usr / bin no está en su RUTA, pero supongo que debería estarlo. Hacer PATH=$PATH\:/usr/bin; export PATH, y phpizefuncionará en el futuro.
Berry Langerak
Recibí este mensaje de error "No se encontraron las bibliotecas compartidas de ffmpeg. Asegúrese de que ffmpeg esté compilado como bibliotecas compartidas usando la opción --enable-shared" Estoy usando este comando "phpize" está funcionando pero cuando estoy ejecutando esto "./configure && make "llega este error
Chintan Gor
14

En Redhat Enterprise / CentOS, use yumpara instalar el php-develmódulo:

yum install php-devel

Para PHP 7, necesitas:

yum install php70-php-devel
fedorqui 'así que deja de dañar'
fuente
1
Esto resulta No package php-devel availablepara mí.
Phantom Watson
Para PHP7, necesitaba usarphp70-php-devel
MECU
yum install php72-php-develpara PHP 7.2
josef
2
y usa estoln -s /opt/remi/php72/root/bin/phpize /usr/bin/phpize
josef
7

Hmm ... en realidad no sé cómo esto lo resolvió. Pero los siguientes pasos lo resolvieron para mí:

find / -name 'config.m4'

Ahora mire si config.m4 está en alguna parte de una carpeta de esas cosas que desea phpize. Vaya a esa carpeta y ejecute phpize directamente allí.

Tonterías
fuente
6

Paso - 1: si no está seguro de la versión de php instalada, primero ejecute el siguiente comando en la terminal

php -v

Salida: el comando anterior generará la versión php instalada en su máquina, la mía es 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

Paso 2: Luego, para instalar phpize, ejecuta el siguiente comando, ya que mi versión de php es 7.2.3. lo reemplazaré con 7.2, entonces el comando será,

sudo apt-get install php7.2-dev

Paso 3: ¡Listo!

Método alternativo (Opcional): para instalar automáticamente la versión de phpize basada en la versión de php instalada en su máquina, ejecute el siguiente comando.

sudo apt-get install php-dev

Este comando detectará automáticamente la versión apropiada de php instalada e instalará el phpize correspondiente para el mismo.

Manoj Selvin
fuente
5

Para ubuntu 14.04LTS con php 7, emita:

sudo apt-get install php-dev

Luego instale:

pecl install memcache
pingle60
fuente
envuelva sus bits de código con comillas para que se muestre como código
YakovL
1
En realidad, el uso de solo php-dev instalará la versión actualmente lanzada y mantenida para su distribución. Entonces, en Ubuntu 12 instalará php5-dev.
MacroMan
5

En Ubuntu 16.04, puede instalar phpizecon el comando

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

que es equivalente a

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

Instalar desde linuxterminal

sudo apt-get install <php_version>-dev

Ejemplo:

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

Esto podría ayudar a alguien en ubuntu. Sin promesas.

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

Y agregando "extension=http.so"a php.ini (normalmente ubicado en/etc/php5/apache2/php.ini )

Luego reinicie Apache (sudo service apache2 restart ).

En caso de duda, revise sus registros de apache:

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

¿Está http.so comenzando o fallando?

ted.strauss
fuente
1

Por supuesto en PHP7.2

sudo apt-get install php7.2-dev
HMagdy
fuente
1

Para ubuntu con Plesk instalado apt-get install plesk-php56-dev, para otras versiones simplemente cambie XX en phpXX (sin el punto)

Sanel
fuente
1

Si tiene problemas con phpize que no se encuentra en CentOS7.6 después de haber instalado las herramientas de desarrollo relevantes para sus versiones de PHP, esta ruta finalmente funcionó para mí:

Para PHP 7.2.x

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

Para PHP 7.3.x

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

Ejecute esto en su carpeta que contiene la extensión PHP descargada, p. Ej.

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
TheOldMan2000
fuente
0

Vaya a la carpeta descargada y allí encontrará config.m4. Abra la terminal y ejecute phpsize.

Santosh rai
fuente
0

Por ejemplo, si quisiera usar el comando "phpize" para PHP 5.6, usaría la ruta completa: Código:

/opt/cpanel/ea-php56/root/usr/bin/phpize
Shobhit Verma
fuente
0

Tuve este problema exacto en macOS en 2018.

Para mí, primero correr brew install phpantes sudo pecl install mongodbhizo el truco.

Adam Diament
fuente