ubuntu编译安装php7遇到的问题及解决方案

时间:2023-12-25 20:30:25

configure: error: Cannot find OpenSSL's <evp.h>

  这个可以在configure的时候,指定openssl的路径,查看openssl的安装路径:

root@ubuntu: ~ # openssl version -a
OpenSSL 1.0.1k 8 Jan 2015
built on: Thu Oct 18 20:42:22 2018
platform: debug-linux-x86_64
options: bn(64,64) rc4(16x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)
compiler: .........
OPENSSLDIR: "/usr/local/ssl"

  可以看到最下面的OPENSSLDIR,到这么路径去查看一下,是不是真的存在这个目录。

  我虽然可以执行openssl程序,也输出OPENSSLDIR,但是,并不存在那个目录。于是,可以重新编译安装一下openssl,注意,不要使用apt-get来安装openssl,因为,如果使用apt-get来安装的话,就会和原有的openssl一样,配置php编译参数时,同样找不到openssl。

  openssl的下载地址:http://distfiles.macports.org/openssl/

  操作命令如下:

root@ubuntu:~ # wget http://distfiles.macports.org/openssl/openssl-1.0.1k.tar.gz
root@ubuntu:~ # tar zxf openssl-1.0.1k.tar.gz
root@ubuntu:~ # cd openssl-1.0.1k
root@ubuntu:~/openssl-1.0.1k # ./config --prefix=/usr/local
root@ubuntu:~/openssl-1.0.1k # make && make install

  再次配置php编译参数即可(不用做改变)。

--with-openssl-dir=/usr/local/openssl

  

configure: error: Cannot find libz

  缺少zlib,可以下载安装zlib。

  下载地址:http://zlib.net/

root@ubuntu ~ # wget http://zlib.net/zlib-1.2.11.tar.gz
root@ubuntu ~ # tar zxf zlib-1.2.11.tar.gz
root@ubuntu ~ # cd zlib-1.2.11/
root@ubuntu ~/zlib-1.2.11 # ./configure
root@ubuntu ~/zlib-1.2.11 # make && make install

  之后重新执行配置

checking for BZip2 in default path... not found
configure: error: Please reinstall the BZip2 distribution

  下载一下bzip2,安装上即可。

  下载地址:https://sourceforge.net/projects/bzip2/

  解压后直接make && make install 。不用configure

./configure: line 23626: curl-dir: No such file or directory
checking for cURL 7.10.5 or greater... ./configure: line 23641: curl-config: command not found
configure: error: cURL version 7.10.5 or later is required to compile php with cURL support

  可以参考官方的手册说明:https://www.php.net/manual/zh/curl.installation.php

  需要下载并安装curl扩展。