linux php 7 configure:错误:请重新安装readline - 我找不到readline.h,但它已安装

问题描述 投票:2回答:3

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

   /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 \

我已经尝试了以下readline选项

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

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

从source和/home/mybin构建的所有其他依赖项都没有问题。你能说出我能设置的旗帜,以便找到readline.h吗?

thx艺术

php linux configure php-7
3个回答
1
投票

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


1
投票

对于readline,您需要安装

sudo apt install -y libedit-dev libreadline-dev


1
投票

首先在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目录中

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

© www.soinside.com 2019 - 2024. All rights reserved.