libcurl3和libcurl4有什么区别


11

我当时正在设置Ubuntu 14.04开发环境,然后安装libcurl,但是注意到我的智能缓存中有两个不同的版本。版本之间的主要区别是什么?人们对Django项目推荐哪些区别?

我以为libcurl4是较新的,并且可能会更好,但是我担心它可能会破坏与其他产品的兼容性,对蛇油证书表现不佳,或者将来使我头疼。

libcurl4有什么我应该注意的大陷阱吗?谢谢。

Answers:


9

如果仔细观察,您会发现,实际上-dbg-dev-doc软件包的软件包名称中都包含版本4,而实际编译的libcurl库附带的软件包仍为版本3。

有关Debian的讨论,请参见以下链接:https : //lists.debian.org/debian-release/2007/04/msg00257.html

如果我理解正确,那么API会发生变化,而ABI不会发生变化,因此二进制软件包保留在版本3中,而开发文件则需要版本凹凸。

这也意味着,例如libcurl4-openssl-devlibcurl3尽管包名称中的版本不同,它还是对应的开发包。您可以查看一下libcurl3-dev(这是一个虚拟包,它指向libcurl4-openssl-dev

No current or candidate version found for libcurl3-dev
Package: libcurl3-dev
State: not a real package
Provided by: libcurl4-openssl-dev (7.47.0-1ubuntu2), 
    libcurl4-openssl-dev (7.47.0-1ubuntu2.2)

上面的代码片段是在Ubuntu 16.04上拍摄的,但是在14.04上可能看起来类似。


4

您可以通过以下方式自己阅读相关软件包的变更日志:

for i in $(dpkg -l libcurl\* | grep libcurl  | awk '{print $2}'); do
  apt-get changelog $i >$i.changelog
done

然后读取*.changelog文件。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.