libcurl does not support HTTPS



我在Ubuntu 14.04上运行,手动安装了curl 7.48(请参阅问题Libcurl未更新)。

我试着执行命令:

carlo@carlo-ThinkPad-W541:/usr/bin$curl-sShttps://storage.googleapis.com/kubernetes-release/release/stable.txtcurl:(1)libcurl中不支持或禁用协议"https"carlo@carlo-ThinkPad-W541:/usr/bin$

因此,我对配置输出进行了快速检查,它明确表示不支持SSL:

configure:配置为构建curl/libcurl:卷曲版本:7.48.0主机设置:x86_64-unknown-linux-gnu安装前缀:/usr/local编译器:gccSSL支持:否(--带有-{SSL、gnutls、nss、polarssl、mbedtls、cyassl、axtls、winssl、darwinssl})

所以我看了一下这个链接https://curl.haxx.se/docs/install.html我尝试过不同的命令:

root@callo-ThinkPad-W541:~/curl-7.48.0#./configure--使用ssl

尝试指定openSSL库的位置:

root@callo-ThinkPad-W541:~/curl-7.48.0#./configure--使用ssl=/lib/x86_64-linux-gnu/

设置env变量:

root@callo-ThinkPad-W541:~/curl-7.48.0#export LDFLAGS="-L/lib/x86_64-linux-gnu/"root@callo-ThinkPad-W541:~/curl-7.48.0#./configure--使用ssl

但似乎什么都不起作用,结果总是一样的:

[…]configure:配置为构建curl/libcurl:卷曲版本:7.48.0主机设置:x86_64-unknown-linux-gnu安装前缀:/usr/local编译器:gccSSL支持:否(--带有-{SSL、gnutls、nss、polarssl、mbedtls、cyassl、axtls、winssl、darwinssl})SSH支持:否(--with-libssh2)zlib支持:已启用GSS-API支持:否(--with-gssapi)TLS-SRP支持:否(--enable TLS-SRP)resolver:默认值(--enable ares/--enable线程解析程序)IPv6支持:已启用Unix套接字支持:已启用IDN支持:否(--with-{libidn,winidn})构建libcurl:Shared=yes,Static=yes内置手动:已启用--libcurl选项:已启用(--disable-libccurl选项)详细错误:已启用(--disable Verbose)SSPI支持:否(--enable SSPI)ca证书捆绑包:/etc/ssl/certs/ca-certificates.crtca证书路径:否ca回退:否LDAP支持:否(--启用LDAP/--使用LDAP-lib/--使用lber-lib)LDAPS支持:否(--enable LDAPS)RTSP支持:已启用RTMP支持:否(--使用librtmp)metalink支持:no(--使用libmetalink)PSL支持:否(找不到libpsl)HTTP2支持:已禁用(--with-nghttp2)协议:DICT文件FTP GOPHER HTTP IMAP POP3 RTSP SMTP TELNET TFTProot@callo-ThinkPad-W541:~/curl-7.48.0#

curl配置的--with-ssl选项将使其检查(理想情况下使用)OpenSSL。

你需要确保你首先有一个OpenSSL-devel包,这样构建过程就可以使用头文件并找到相关的库等。

如果您的系统中有一个自定义的OpenSSL版本,您可以用./configure --with-ssl=/path/to/prefix指出该自定义OpenSSL安装树的

如果仍然无法正确查找和使用OpenSSL,则应考虑打开configure在运行时创建的文件config.log。然后在那里搜索openssl,并尝试分析其中对openssl的检查以及它们失败的原因。