PHP 8.4.2 Released!

Компиляция модулей PECL статически в PHP

Возможно, потребуется собрать модуль PECL статично в бинарный файл PHP. Для этого исходный код модуля размещают в каталоге /path/to/php/src/dir/ext/ и вызывают перегенерацию конфигурационных скриптов через систему сборки PHP.

$ cd /path/to/php/src/dir/ext
$ pecl download extname
$ gzip -d < extname.tgz | tar -xvf -
$ mv extname-x.x.x extname

Это создаст следующую директорию:

/path/to/php/src/dir/ext/extname

Затем PHP потребуется принудительно пересобрать скрипт конфигурации, после чего скрипт конфигурации собирается как обычно:

$ cd /path/to/php/src/dir
$ rm configure
$ ./buildconf --force
$ ./configure --help
$ ./configure --with-extname --enable-someotherext --with-foobar
$ make
$ make install

Замечание: Для запуска скрипта buildconf потребуется команда autoconf версии 2.68 и команда automake версии 1.4+. Иногда работают и более новые версии скрипта autoconf, но не поддерживаются.

В зависимости от модуля будет использован один из двух параметров — --enable-extname или --with-extname. Обычно модуль, который не требует внешних библиотек, использует параметр --enable. Это проверяют командой buildconf:

$ ./configure --help | grep extname
Добавить

Примечания пользователей 1 note

up
5
anthon at piwik dot org
12 years ago
Some extensions cannot be statically linked (e.g., xdebug).
To Top