编译php5.6 error,编译php5.6出错:configure: error: Cannot find OpenSSL's <evp.h>

在Debian8系统中,用户正在尝试安装一系列开发包以编译PHP5.6,并遇到了配置错误:`configure:error:Cannot find OpenSSL's`。该错误通常意味着在编译PHP时找不到OpenSSL的头文件。解决方案可能包括确保已正确安装OpenSSL库及其开发文件,并检查它们的路径是否在编译配置中被正确引用。
摘要由CSDN通过智能技术生成

我的系统dbeian8.

apt-get update

sudo apt-get install apache2 apache2-dev

apt-get install build-essential

sudo apt-get install libxml2-dev libcurl4-openssl-dev libjpeg-dev libpng-dev libxpm-dev libmysqlclient-dev libpq-dev libicu-dev libfreetype6-dev libldap2-dev libxslt-dev

apt-get install libssl-dev libsslcommon2-dev

上面的编译前,各包安装完了。

find / -name 'openssl'

/usr/include/x86_64-linux-gnu/openssl

/usr/include/openssl

/usr/share/doc/openssl

/usr/bin/openssl

/usr/local/src/php-5.6.0/ext/openssl

下载准备php5.6

wget http://cn2.php.net/distributi...

xz -d php-5.6.0.tar.xz

tar xf php-5.6.0.tar -C /usr/local/src/

groupadd www

useradd -g www -s /sbin/nologin -M www

cd /usr/local/src/php-5.6.0/

开始编译了

./configure \

--prefix=/usr/local/php56 \

--with-config-file-path=/usr/local/php56/etc \

--enable-inline-optimization \

--disable-debug \

--disable-rpath \

--enable-shared \

--enable-opcache \

--enable-fpm \

--with-fpm-user=www \

--with-fpm-group=www \

--with-mysql=mysqlnd \

--with-mysqli=mysqlnd \

--with-pdo-mysql=mysqlnd \

--with-gettext \

--enable-mbstring \

--with-iconv \

--with-mcrypt \

--with-mhash \

--with-openssl \

--enable-bcmath \

--enable-soap \

--with-libxml-dir \

--enable-pcntl \

--enable-shmop \

--enable-sysvmsg \

--enable-sysvsem \

--enable-sysvshm \

--enable-sockets \

--with-curl \

--with-zlib \

--enable-zip \

--with-bz2 \

--with-readline

报错

configure: error: Cannot find OpenSSL's

请问,如何解决?

### 回答1: 这个错误提示是因为在编译过程中找不到 OpenSSL 库的 <evp.h> 头文件。需要检查 OpenSSL 库是否正确安装并且路径是否正确配置。可以尝试重新安装 OpenSSL 库或者手动指定 OpenSSL 库的路径。 ### 回答2: 这个错误的产生通常是因为系统缺少了OpenSSL的库文件或者没有正确配置路径。OpenSSL是一个开源的加密库,提供了常用的加解密算法、SSL/TLS协议等功能。在进行编译和链接时,需要包含OpenSSL的头文件和链接库,以便程序正确运行。 解决这个错误的方法如下: 1. 检查OpenSSL库是否已经安装 在终端输入命令"openssl version",如果输出版本号,则证明OpenSSL已经安装。如果没有安装,则需要先安装OpenSSL库文件并且设置路径。 2. 配置OpenSSL路径 在终端输入命令"openssl version -a",查看OpenSSL的安装路径。将路径信息添加到环境变量中,或者在编译时使用"-I"参数指定头文件路径和"-L"参数指定库文件路径。 3. 更新OpenSSL版本 如果已经安装了OpenSSL,但是版本过旧,也可能会导致找不到头文件的问题。建议更新OpenSSL的版本,或者安装最新的OpenSSL版本。 通过以上步骤检查并配置OpenSSL路径,一般都能解决configure: error: cannot find openssl's <evp.h>的问题。 如果问题仍然存在,则需要进一步检查系统配置,或者与开发者联系获取更多帮助。 ### 回答3: 这个错误是由于缺少openssl的libcrypto库。EVPOpenSSL的一个加密库,如果没有正确安装或配置openssl,就会出现这个错误。 要解决这个问题,你需要确认你的系统安装了openssl,包括其开发库和头文件,然后在编译你的程序时指定正确的头文件和库文件路径。首先,你可以尝试在命令行运行openssl命令,如果系统无法识别该命令,则说明openssl未正确安装。在不同系统或发行版上,安装openssl的方法可能有所不同,你可以查看官方文档或使用系统包管理器来安装openssl。 如果系统已安装openssl但仍出现这个错误,你需要检查编译选项是否正确。通常,你需要在编译命令中添加-I和-l选项来指定头文件和库文件路径,例如: gcc -I/usr/local/ssl/include -L/usr/local/ssl/lib -lssl -lcrypto myprog.c -o myprog 其中,-I指定头文件路径,-L指定库文件路径,-l指定需要链接的库文件。在不同系统或发行版上,路径和库名可能有所不同,你可以先尝试查找系统是否安装了openssl开发库,然后确定正确的路径和库名。 最后,你也可以尝试更新或升级openssl到最新版本,这可能会解决某些依赖问题。但是,在更新时请注意系统版本和与其他软件的兼容性,以免出现其他问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值