What is the difference between libcurl3 and libcurl4

If you look closely you will see, that actually only the -dbg, -dev and -doc packages contain a version 4 in their package name, while the packages that ship the actual compiled libcurl library are still at version 3.

For a discussion on Debian about this, see this link: https://lists.debian.org/debian-release/2007/04/msg00257.html

If I understand it right, there was a change in the API but not the ABI, so the binary packages were left at version 3, while the development files needed a version bump.

It also means that for example libcurl4-openssl-dev is the corresponding development package for libcurl3 despite the different version in the package name. You can see that if you take a look at libcurl3-dev (which is a virtual package and points to 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)

The above snippet was taken on Ubuntu 16.04 but this will probably look similar on 14.04.


You can read the changelog of the related packages yourself, via:

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

Then read the *.changelog files.

Tags:

Ssl

Curl

14.04