PECL is “The PHP Extension Community Library”. In OpenBSD, some PECL libraries such as imagick are available as ports packages.
However, it might be sometimes necessary to use
pecl commands themselves. For example, in my case, it was to install PECL MongoDB extension which didn’t exist in ports.
pecl commands, what to do is just install pear, which is “PHP Extensions and Add-on Repository” and comes with pear-utils:
$ doas pkg_add pear
The output was:
quirks-3.326 signed on 2020-09-22T20:03:15Z pear-1.10.9:pear-utils-1.10.9: ok pear-1.10.9: ok
Then you have 😉 :
$ pecl version
The output was:
PEAR Version: 1.10.7 PHP Version: 7.3.22 Zend Engine Version: 3.3.22 Running on: OpenBSD ... 6.7 GENERIC#6 amd64
Also you will be able to use:
$ pecl help
The output was:
Commands: build Build an Extension From C Source bundle Unpacks a Pecl Package channel-add Add a Channel channel-alias Specify an alias to a channel name channel-delete Remove a Channel From the List channel-discover Initialize a Channel from its server channel-info Retrieve Information on a Channel channel-login Connects and authenticates to remote channel server channel-logout Logs out from the remote channel server channel-update Update an Existing Channel clear-cache Clear Web Services Cache config-create Create a Default configuration file config-get Show One Setting config-help Show Information About Setting config-set Change Setting config-show Show All Settings convert Convert a package.xml 1.0 to package.xml 2.0 format cvsdiff Run a "cvs diff" for all files in a package cvstag Set CVS Release Tag download Download Package download-all Downloads each available package from the default channel info Display information about a package install Install Package list List Installed Packages In The Default Channel list-all List All Packages list-channels List Available Channels list-files List Files In Installed Package list-upgrades List Available Upgrades login Connects and authenticates to remote server [Deprecated in favor of channel-login] logout Logs out from the remote server [Deprecated in favor of channel-logout] makerpm Builds an RPM spec file from a PEAR package package Build Package package-dependencies Show package dependencies package-validate Validate Package Consistency pickle Build PECL Package remote-info Information About Remote Packages remote-list List Remote Packages run-scripts Run Post-Install Scripts bundled with a package run-tests Run Regression Tests search Search remote package database shell-test Shell Script Test sign Sign a package distribution file svntag Set SVN Release Tag uninstall Un-install Package update-channels Update the Channel List upgrade Upgrade Package upgrade-all Upgrade All Packages [Deprecated in favor of calling upgrade with no parameters] Usage: pecl [options] command [command-options] <parameters> Type "pecl help options" to list all options. Type "pecl help shortcuts" to list all command shortcuts. Type "pecl help version" or "pecl version" to list version information. Type "pecl help <command>" to get the help for the specified command.