编译php的问题
1. 编译php时 “configure: error: Cannot find OpenSSL's libraries”
解决如下:
sudo apt-get -y install openssl (ubuntu)
sudo yum -y install openssl (centos)
再编译php。
还报同样的错就:
sudo apt-get install -y libcurl4-openssl-dev pkg-config
再编译php。
还报同样的错的话就手动编译安装openssl吧,如下:
wget ftp://ftp.openssl.org/source/openssl-1.0.0c.tar.gz
tar -zxf openssl-1.0.0c.tar.gz
cd openssl-1.0.0c/
./config --prefix=/usr/local --openssldir=/usr/local/ssl
make && make install
./config shared --prefix=/usr/local --openssldir=/usr/local/ssl
make clean
make && make install
(这是两次编译安装,最好这么做)
2. 编译php时 “libcurl.so: undefined reference to `SSL_CTX_use_certificate_chain_file@OPENSSL_1.0.0”
这是我们安装的openssl版本和报错提示的“OPENSSL_1.0.0”对不上,解决如下:
$ openssl version 用这个命令看看openssl版本信息,确定是否是openssl版本和“OPENSSL_1.0.0”不一直。
确实不一直就删除已安装的openssl, 用上面第一条中的方法手动编译安装对应“OPENSSL_1.0.0”的openssl
如果一致,可以这样解决:apt-get install --reinstall libgnutls-openssl27 libcurl4-gnutls-dev
再编译php。
3. 编译openssl时 “POD document had syntax errors at /usr/bin/pod2man line 71. Makefile:594: recipe for target 'install_docs' failed”
解决如下:
make && make install_sw
4. 编译php时 如果有如下的错误时:
checking for openssl support in libcurl... no
checking for gnutls support in libcurl... no
checking for curl_easy_perform in -lcurl... no
考虑重新安装 libssl-dev (我遇到的问题是libssl-dev版本高,造成上面的错误,降libssl-dev版本就可以了,如何降版本)