
Para um software que estou instalando em um servidor Ubuntu, ele precisa dos pacotes curl deb. Quando tento instalar libcurl4-dev
diz que este é um pacote virtual e preciso instalar libcurl4-gnutls-dev
ou libcurl4-nss-dev
. Qual é a diferença entre instalar um ou outro?
PS: Existe alguma grande diferença entre instalar libcurl3 ou libcurl4?
Responder1
Quando tento instalar o libcurl4-dev, ele diz que este é um pacote virtual e preciso instalar o libcurl4-gnutls-dev ou o libcurl4-nss-dev. Qual é a diferença entre instalar um ou outro?
Ambos fornecem a mesma funcionalidade, apenas usando bibliotecas diferentes.
Fundo:
ondulaçãoapoia o uso deSegurança da camada de transporte(TLS, também conhecido como SSL) para transferências de dados. Como a implementação do TLS é bastante complicada, o cURL delega isso a uma biblioteca externa. cURL suporta diversas bibliotecas diferentes para esse propósito, e você precisa selecionar uma ao construí-la (vejacomo instalar curl e libcurl, seção "Selecionar back-end TLS"). As opções mais populares para usar como biblioteca TLS são:
- OpenSSL(o padrão para cURL)
- Serviços de segurança de rede(NSS)
- GnuTLS
Qual você escolher depende de vários fatores (licenciamento, desempenho, conjunto exato de recursos, como algoritmos de criptografia suportados...), mas todos eles fornecem principalmente a mesma funcionalidade.
O Ubuntu quer permitir que as pessoas escolham qual variante do cURL desejam usar, então elas constroem cURL contra diferentes bibliotecas TLS e as oferecem como pacotes separados. A partir do Ubuntu bionic (18.04LTS), as variantes são:
- libcurl4-gnutls-dev
- libcurl4-nss-dev
- libcurl4-openssl-dev
Portanto, instale a variante correta para a biblioteca TLS que deseja usar. Se você não tiver nenhuma preferência específica, instale a variante padrão (que usa OpenSSL).