PHP Conference Nagoya 2025

Компіляція PECL через команду pecl

PECL дозволяє легко створювати загальнодоступні розширення PHP. Використовуючи » команду pecl, запустіть наступне:


$ pecl install extname

Ця команда завантажить сирці для extname, скомпілює їх, та встановить extname.so у extension_dir. Після чого файл extname.so можна підключати через php.ini

Початково, команда pecl не встановлює пакети, які познечені як alpha або beta. Якщо стабільні (stable) пакети недоступні, ви можете встановити beta пакети за допомогою наступної команди:


$ pecl install extname-beta

Ви можете також встановити конкретну версію використовуючи такий варіант:


$ pecl install extname-0.1

Зауваження:

Після підключення розширення в php.ini, перезапуск веб-сервісу є обов'язковим, щоб зміни набрали чинності.

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
7
ezekial aikle
1 year 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
11 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