В чем разница между установкой libcurl4-gnutls-dev или libcurl4-nss-dev в Ubuntu 11.10?

14

Для программного обеспечения, которое я устанавливаю на сервере Ubuntu, ему нужны пакеты curl deb. Когда я пытаюсь установить, libcurl4-devон говорит, что это виртуальный пакет, и мне нужно установить libcurl4-gnutls-devили libcurl4-nss-dev. В чем разница между установкой одного или другого?

PS: Есть ли большая разница между установкой libcurl3 или libcurl4?

Пабло Марин-Гарсия
источник
3
Я предполагаю, что самая большая разница между конечными пользователями между gnutls / nss - это, вероятно, лицензия. Что касается curl3 к curl4, это может быть ваш ответ. lists.debian.org/debian-release/2007/04/msg00292.html
Zoredache
+1 @Zoredache. спасибо за ссылку.
Пабло Марин-Гарсия
Кто-нибудь собирается дать реальный ответ здесь?
Брюс Беккер

Ответы:

5

Когда я пытаюсь установить libcurl4-dev, он говорит, что это виртуальный пакет, и мне нужно установить libcurl4-gnutls-dev или libcurl4-nss-dev. В чем разница между установкой одного или другого?

Оба предоставляют одинаковую функциональность, просто используя разные библиотеки.

Задний план:

cURL поддерживает использование безопасности транспортного уровня (TLS, иначе SSL) для передачи данных. Поскольку реализация TLS довольно сложна, cURL делегирует это внешней библиотеке. Для этой цели cURL поддерживает несколько разных библиотек, и вам нужно выбрать одну из них при сборке (см. как установить curl и libcurl , раздел «Выбор бэкэнда TLS»). Наиболее популярные варианты использования в качестве библиотеки TLS:

Какой из них вы выберете, зависит от нескольких факторов (лицензирование, производительность, точный набор функций, таких как поддерживаемые алгоритмы шифрования ...), но все они в основном предоставляют одинаковую функциональность.

Ubuntu хочет позволить людям выбирать, какой вариант cURL они хотят использовать, поэтому они создают cURL-копии для разных библиотек TLS и предлагают их в виде отдельных пакетов. Начиная с Ubuntu Bionic (18.04LTS), варианты:

  • libcurl4-GnuTLS-DEV
  • libcurl4-NSS-DEV
  • libcurl4-OpenSSL-DEV

Итак, установите правильный вариант для библиотеки TLS, которую вы хотите использовать. Если у вас нет особых предпочтений, установите вариант по умолчанию (который использует OpenSSL).

sleske
источник