我在Ubuntu上手动编译PHP(7.0.7)和cURL(7.49.1)。在PHP编译期间看到以下错误:
checking for cURL support... yes
checking for cURL 7.10.5 or greater... libcurl 7.49.1
checking for SSL support in libcurl... yes
checking how to run the C preprocessor... cc -E
checking for openssl support in libcurl... no
checking for gnutls support in libcurl... no
checking for curl_easy_perform in -lcurl... no
configure: error: There is something wrong. Please check config.log for more information.
卷曲配置:
./configure --prefix="${INSTALL_PATH}/curl" \
--with-openssl="${INSTALL_PATH}/openssl/"
PHP配置
./configure --prefix="${INSTALL_PATH}/php" \
--with-apxs2="${INSTALL_PATH}/httpd/bin/apxs" \
--with-libxml-dir="${INSTALL_PATH}/libxml2" \
--with-gettext \
${openldap_lib_option} \
--with-openssl="${INSTALL_PATH}/openssl/" \
--with-curl="${INSTALL_PATH}/curl/"
感谢任何输入。我需要额外的包裹吗? 如果在没有cURL支持的情况下编译PHP,一切都很好。
完整的config.log文件是here。 config.log中有一堆OpenSSL内容的“未定义参考”。但我不认为它们是错误的原因,因为同样的“未定义的引用”也发生在gnutls测试和libcurl的openssl测试中。但这很奇怪,因为我在包中添加了OpenSSL(1.0.2g),但仍然看到“在libcurl中检查openssl支持......没有”..
我正在使用Ubuntu 12.04 amd64进行编译。但很快将使用14.04 / 16.04 x86 / amd64进行编译。
答案 0 :(得分:5)
我刚刚使用curl和openssl支持在Debian 8上编译了PHP 7.0.8。
以下是为避免编译错误而安装的依赖项:
apt-get install libssl-dev libcurl4-openssl-dev pkg-config
另外,本节中的./configure选项如下:
--with-libdir=lib/x86_64-linux-gnu \
--with-openssl=/usr \
--with-curl \
以下是关于bugs.php.net的相关主题:
https://bugs.php.net/bug.php?id=69510
希望这有帮助