如何在CentOS/RHEL上构建和安装最新的cURL版本()

本文概述

  • 先决条件
  • 建立网址
  • 验证
想要从源代码构建最新的cURL?
操作系统附带的cURL可能不是最新的, 并且如果你需要针对特定??要求的最新版本, 则需要从源代码进行构建。
最近, 我在CentOS上使用默认出厂版本的cURL测试了HTTP / 3, 但这没有用。顺便说一句, 你可以使用cURL做更多的事情。
[[email  protected] ~]# curl --versioncurl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.44 zlib/1.2.7 libidn/1.28 libssh2/1.8.0Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz unix-sockets [[email  protected] ~]#

但是, 最新的cURL版本(7.67)支持HTTP / 3。因此, 我只有一个选择–从源代码构建。这只是一个例子。你可能还有其他要求。
以下示例适用于7.67(我写的是最新的)。但是任何其他版本的步骤均相同。
先决条件让我们安装所需的依赖项。
  • 更新系统。尽管这是可选的, 但我更喜欢这样做。我总是有最新的安装包。
yum update -y

  • 安装所需的软件包
yum install wget gcc openssl-devel -y

  • 下载最新的cURL源–你可以参考其官方下载页面以了解最新版本。
wget https://curl.haxx.se/download/curl-7.67.0.tar.gz

  • 解压缩下载的gz文件
gunzip -c curl-7.67.0.tar.gz | tar xvf -

它将在当前工作目录上创建一个新文件夹
建立网址下载并提取最新的cURL之后, 就可以构建它们了。
  • 解压缩后进入新创建的文件夹
cd curl-7.67.0

  • 如下配置SSL
./configure --with-ssl

  • 你将看到类似下面的输出。
configure: Configured to build curl/libcurl:Host setup:x86_64-pc-linux-gnuInstall prefix:/usr/localCompiler:gccCFLAGS:-Werror-implicit-function-declaration -O2 -Wno-system-headers -pthreadCPPFLAGS:LDFLAGS:LIBS:-lssl -lcrypto -lssl -lcrypto -lzcurl version:7.67.0SSL:enabled (OpenSSL)SSH:no(--with-libssh2)zlib:enabledbrotli:no(--with-brotli)GSS-API:no(--with-gssapi)TLS-SRP:no(--enable-tls-srp)resolver:POSIX threadedIPv6:enabledUnix sockets:enabledIDN:no(--with-{libidn2, winidn})Build libcurl:Shared=yes, Static=yesBuilt-in manual:enabled--libcurl option: enabled (--disable-libcurl-option)Verbose errors:enabled (--disable-verbose)Code coverage:disabledSSPI:no(--enable-sspi)ca cert bundle:/etc/pki/tls/certs/ca-bundle.crtca cert path:noca fallback:noLDAP:no(--enable-ldap / --with-ldap-lib / --with-lber-lib)LDAPS:no(--enable-ldaps)RTSP:enabledRTMP:no(--with-librtmp)Metalink:no(--with-libmetalink)PSL:no(libpsl not found)Alt-svc:no(--enable-alt-svc)HTTP2:disabled (--with-nghttp2)HTTP3:disabled (--with-ngtcp2, --with-quiche)ESNI:no(--enable-esni)Protocols:DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS POP3 POP3S RTSP SMB SMBS SMTP SMTPS TELNET TFTPFeatures:SSL IPv6 UnixSockets libz AsynchDNS NTLM NTLM_WB HTTPS-proxy

  • 让我们安装它们
makemake install

完成后, 将需要几秒钟的时间;你可以验证版本以确保已成功安装。
验证使用– version查看版本详细信息。
# curl --versioncurl 7.67.0 (x86_64-pc-linux-gnu) libcurl/7.67.0 OpenSSL/1.0.2k-fips zlib/1.2.7Release-Date: 2019-11-06Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftpFeatures: AsynchDNS HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL UnixSockets#

总结
【如何在CentOS/RHEL上构建和安装最新的cURL版本()】你会发现, 按步骤进行操作很容易。我希望这可以帮助你从源代码安装cURL。

    推荐阅读