如何编译支持 SSL 的 curl?

如何编译支持 SSL 的 curl?

我在 Ubuntu 14.04 上运行,并且手动安装了 curl 7.48(参见问题https://stackoverflow.com/questions/36866583/libcurl-not-updated)。

我尝试执行以下命令:

carlo@carlo-ThinkPad-W541:/usr/bin$ curl -sS https://storage.googleapis.com/kubernetes-release/release/stable.txt
curl:(1)libcurl 不支持或禁用协议“https”
carlo@carlo-ThinkPad-W541:/usr/bin$

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

配置:配置构建curl / libcurl:

  curl 版本:7.48.0
  主机设置:x86_64-unknown-linux-gnu
  安装前缀:/usr/local
  编译器:gcc
  SSL 支持:否(--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl})

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

root@carlo-ThinkPad-W541:~/curl-7.48.0# ./configure --with-ssl

尝试指定我的 openSSL 库的位置:

root@carlo-ThinkPad-W541:~/curl-7.48.0# ./configure --with-ssl=/lib/x86_64-linux-gnu/

设置环境变量:

root@carlo-ThinkPad-W541:~/curl-7.48.0# 导出 LDFLAGS="-L/lib/x86_64-linux-gnu/"
root@carlo-ThinkPad-W541:~/curl-7.48.0# ./configure --with-ssl

但似乎没有什么效果,结果总是一样的:

[...]
配置:配置构建curl / libcurl:

  curl 版本:7.48.0
  主机设置:x86_64-unknown-linux-gnu
  安装前缀:/usr/local
  编译器:gcc
  SSL 支持:否(--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl})
  SSH 支持:否(--with-libssh2)
  zlib 支持:已启用
  GSS-API 支持:否(--with-gssapi)
  TLS-SRP 支持:否(--enable-tls-srp)
  解析器:默认(--enable-ares / --enable-threaded-resolver)
  IPv6 支持:已启用
  Unix 套接字支持:已启用
  IDN 支持:否(--with-{libidn,winidn})
  构建 libcurl:共享=是,静态=是
  内置手册:已启用
  --libcurl 选项:启用(--disable-libcurl-option)
  详细错误:已启用(--disable-verbose)
  SSPI 支持:否(--enable-sspi)
  ca 证书包:/etc/ssl/certs/ca-certificates.crt
  ca 证书路径:否
  ca 后备:否
  LDAP 支持:否(--enable-ldap / --with-ldap-lib / --with-lber-lib)
  LDAPS 支持:否(--enable-ldaps)
  RTSP 支持:已启用
  RTMP 支持:否(--with-librtmp)
  metalink 支持:否(--with-libmetalink)
  PSL 支持:否(未找到 libpsl)
  HTTP2 支持:已禁用(--with-nghttp2)
  协议:DICT FILE FTP GOPHER HTTP IMAP POP3 RTSP SMTP TELNET TFTP

root@carlo-ThinkPad-W541:~/curl-7.48.0#

答案1

安装libssl-dev,然后configure应该无需任何标志就能自动检测 OpenSSL。

或者,您可以安装版本 > 7.40来自 Wily 或 Xenial 存储库

相关内容