Compiling shared PECL extensions with the pecl command

PECL makes it easy to create shared PHP extensions. Using the » pecl command, do the following:

$ pecl install extname

This will download the source for extname, compile, and install into your extension_dir. may then be loaded via php.ini

By default, the pecl command will not install packages that are marked with the alpha or beta state. If no stable packages are available, you may install a beta package using the following command:

$ pecl install extname-beta

You may also install a specific version using this variant:

$ pecl install extname-0.1


After enabling the extension in php.ini, restarting the web service is required for the changes to be picked up.

add a note add a note

User Contributed Notes 5 notes

pedro dot fonini at gmail dot com
9 years ago
to use the pecl, pear, or phpize commands in fedora, install the php-devel package:
$ yum install php-devel
ktcox at mail dot com
6 years ago
The Arch Linux package that contains PECL is 'php-pear'

# pacman -S php-pear
zir dot echo at gmail dot com
9 years ago
Install pecl for gentoo:

emerge dev-php/PEAR-PEAR
ericn at amazon dot com
3 years ago
To compile pecl extensions on Amazon Linux AMIs, follow the tutorial at 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
Bichis Paul
8 months ago
on Mageia Linux use urpmi

[afk@mageia5][~]$ sudo urpmi php-pear
To Top