对于我在 ubuntu 服务器上安装的软件,它需要 curl deb 包。当我尝试安装时,libcurl4-dev
它说这是一个虚拟包,我需要安装libcurl4-gnutls-dev
或libcurl4-nss-dev
。安装其中一个或另一个有什么区别?
PS:安装libcurl3和libcurl4有什么大区别吗?
答案1
当我尝试安装 libcurl4-dev 时,系统提示这是一个虚拟包,我需要安装 libcurl4-gnutls-dev 或 libcurl4-nss-dev。安装其中一个和另一个有什么区别?
两者都提供相同的功能,只是使用不同的库。
背景:
卷曲支持使用传输层安全性(TLS,又称 SSL)用于数据传输。由于实现 TLS 相当棘手,cURL 将此委托给外部库。cURL 支持多个不同的库来实现此目的,您需要在构建时选择一个库(请参阅如何安装 curl 和 libcurl,部分“选择 TLS 后端”)。最流行的 TLS 库选项是:
选择哪一个取决于几个因素(许可,性能,确切的功能集,例如支持的加密算法......),但它们大多提供相同的功能。
Ubuntu 希望允许人们选择他们想要使用的 cURL 变体,因此他们针对不同的 TLS 库构建了 cURL,并将它们作为单独的软件包提供。从 Ubuntu bionic (18.04LTS) 开始,变体包括:
- libcurl4-gnutls-开发
- libcurl4-nss-dev
- libcurl4-openssl-dev
因此,请为要使用的 TLS 库安装正确的变体。如果您没有特别的偏好,请安装默认变体(使用 OpenSSL)。