使用cURL编译PHP失败

时间:2016-06-06 10:47:00

标签: php linux curl compilation

我在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进行编译。

1 个答案:

答案 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

希望这有帮助