怎样安装PHP的readline扩展

2020年1月20日 | 分类: 【技术】

【介绍】

readline 模块可用于增强交互式命令行程序,使其更易于使用。 它主要用于提供命令行文本完成或「选项卡完成」。

参考:https://learnku.com/docs/pymotw/readline-the-gnu-readline-library/3451

【依赖】

CentOS 环境:

yum install re2c libedit-devel -y

Ubuntu 环境:

sudo apt install re2c libedit-dev -y

【安装】

下载 php 源码包并解压:

wget http://php.net/distributions/php-7.3.22.tar.xz && tar -xvf php-7.3.22.tar.xz && cd php-7.3.22

进入 php 源程序目录中的 ext 目录中,这里存放着各个扩展模块的源代码,选择 readline 模块。

cd ext/readline && /usr/local/php/bin/phpize && ./configure --with-php-config=/usr/local/php/bin/php-config && make && make install && cd ../../

输出:

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-zts-20180731/

【设置】

在 php.ini 文件中添加:

; [readline]
extension = "readline.so"

【排错】

报错:configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.

安装 re2c :

参考:https://amon.org/re2c

sudo apt install re2c -y

报错:configure: error: Please reinstall libedit – I cannot find readline.h

安装 libedit-dev :

sudo apt install libedit-dev -y