CascadiaPHP 2024

Compilation d'extensions PECL partagées avec la commande pecl

PECL facilite la création d'extensions PHP partagées. En utilisant la » commande pecl, faites ceci :


$ pecl install extname

Ceci va télécharger le fichier source de l'extension extname, le compiler et installer le fichier extname.so dans le dossier extension_dir. extname.so doit ensuite être chargé via php.ini.

Par défaut, la commande pecl n'installera pas les paquets marqués comme étant alpha ou beta. Si aucun paquet stable n'est disponible, il est possible d'installer un paquet beta en utilisant la commande suivante :


$ pecl install extname-beta

Il est également possible d'installer une version spécifique en utilisant la commande :


$ pecl install extname-0.1

Note:

Après avoir activé l'extension dans le php.ini, il est requis de relancer le serveur Web afin de la prendre en compte.

add a note

User Contributed Notes 7 notes

up
20
giulliano dot scatalon dot rossi at gmail dot com
4 years ago
To install the PECL on debian based linux distros (ubuntu, mint, kali, etc.)
Use the apitude command:

sudo apt-get install php-pear

I hope helped someone
up
6
ezekial aikle
10 months ago
Options to pass to configure (with -D or --configureoptions=) need to be specified this way in a Dockerfile RUN command:

RUN pecl install -D 'with-example-dir="/dir" enable-example-thing="yes"' package
or
RUN pecl install --configureoptions='with-example-dir="/dir" enable-example-thing="yes"' package

Otherwise, docker build might quote the command in a way that pecl doesn't parse correctly, and the build will fail with an error like this one:

PHP Fatal error: Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, null given in /usr/local/lib/php/PEAR/Builder.php:397
up
8
Bichis Paul
7 years ago
on Mageia Linux use urpmi

[afk@mageia5][~]$ sudo urpmi php-pear
up
9
ktcox at mail dot com
13 years ago
The Arch Linux package that contains PECL is 'php-pear'

# pacman -S php-pear
up
7
ericn at amazon dot com
10 years ago
To compile pecl extensions on Amazon Linux AMIs, follow the tutorial at http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-LAMP.html and then install these additional required packages with the following command:

[ec2-user ~]$ sudo yum install php-devel zlib-devel curl-devel gcc

You should then be able to compile pecl extensions; for example, enter the following command to compile the pecl_http extension:

[ec2-user ~]$ sudo pecl install pecl_http
up
7
zir dot echo at gmail dot com
16 years ago
Install pecl for gentoo:

emerge dev-php/PEAR-PEAR
up
3
pedro dot fonini at gmail dot com
16 years ago
to use the pecl, pear, or phpize commands in fedora, install the php-devel package:
$ yum install php-devel
To Top