Linux PHP 7 配置: 错误: 请重新安装 readline - 我找不到 readline.h,但它已安装


linux php 7 configure: error: Please reinstall readline - I cannot find readline.h, but it is installed

我正在从源代码编译php7,并在/home/mybin中预编译了许多依赖项,例如我在

   /home/mybin/bin/openssl
   /home/mybin/include/openssl/*.h

我也读了一行

/home/mybin/include/readline/readline.h

使用 PHP 编译选项

./configure '
CC=/home/mybin/bin/gcc '
--prefix=/home/_cgi/php7 '
--bindir=/home/mybin/bin '
--libdir=/home/mybin/lib '
--with-libdir=/home/mybin/lib64 '
--includedir=/home/mybin/include '
--include-openssl '

我已经尝试了以下阅读线选项

--with-readline=/home/mybin/include/readline
OR 
--with-readline=/home/mybin/
OR
--with-readline

所有变体都以 configure: error: Please reinstall readline - I cannot find readline.h 结尾

从源代码和/home/mybin中构建的所有其他依赖项都没有问题。你能建议我设置什么旗帜以便找到readline.h吗?

谢谢艺术

首先在 Debian-9 上,我libreadline-dev使用

apt-get install libreadline-dev

然后在使用命令搜索readline.h路径时

dpkg -S readline.h

它给了我以下输出:

nodejs: /usr/share/doc/nodejs/api/readline.html libreadline-dev:amd64: /usr/include/readline/readline.h

所以文件位于/usr目录中

最后,我使用--with-readline=/usr配置了php,一切都很好。

对于您需要安装的阅读行

sudo apt install -y libedit-dev libreadline-dev

请参阅 http://stackoverflow.com/questions/35891777/linux-correct-flag-to-pass-gcc-mcrypt-h-location 以获取有关如何解决此问题的良好描述,因为两者都是相关的