Qual é a diferença entre libcurl3 e libcurl4


11

Eu estava configurando um ambiente de desenvolvimento Ubuntu 14.04 e fui instalar a libcurl, mas notei que existem duas versões diferentes nos meus caches de aptidão. Quais são as principais diferenças entre as versões e quais as pessoas recomendam para os projetos do Django?

Estou assumindo que libcurl4 é mais recente e possivelmente melhor, mas estou preocupado que isso possa quebrar a compatibilidade com outros produtos, agir de maneira estranha com certs de óleo de cobra ou causar dores de cabeça no futuro.

Existem grandes truques que eu deveria estar ciente com libcurl4? Obrigado.

Respostas:


9

Se você olhar de perto você vai ver, que na verdade apenas o -dbg, -deve -docpacotes contêm uma versão 4 em seu nome do pacote, enquanto os pacotes que acompanham a biblioteca libcurl compilado real ainda estão na versão 3.

Para uma discussão sobre o Debian sobre isso, consulte este link: https://lists.debian.org/debian-release/2007/04/msg00257.html

Se eu entendi direito, houve uma alteração na API, mas não na ABI; portanto, os pacotes binários foram deixados na versão 3, enquanto os arquivos de desenvolvimento precisavam de um aumento de versão.

Isso também significa que, por exemplo, libcurl4-openssl-devé o pacote de desenvolvimento correspondente, libcurl3apesar da versão diferente no nome do pacote. Você pode ver que, se você der uma olhada libcurl3-dev(que é um pacote virtual e aponta para 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)

O trecho acima foi tirado no Ubuntu 16.04, mas provavelmente será semelhante no 14.04.


4

Você pode ler o registro de alterações dos pacotes relacionados você mesmo, via:

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

Então leia os *.changelogarquivos.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.