
Ubuntu サーバーにインストールするソフトウェアには、curl deb パッケージが必要です。インストールしようとすると、これは仮想パッケージであり、またはをlibcurl4-dev
インストールする必要があると表示されます。どちらか一方をインストールする場合と、もう一方をインストールする場合の違いは何ですか?libcurl4-gnutls-dev
libcurl4-nss-dev
PS: libcurl3 と libcurl4 のインストールに大きな違いはありますか?
答え1
libcurl4-dev をインストールしようとすると、これは仮想パッケージなので、libcurl4-gnutls-dev または libcurl4-nss-dev をインストールする必要があると表示されます。どちらか一方をインストールする場合の違いは何ですか?
どちらも異なるライブラリを使用しているだけで、同じ機能を提供します。
背景:
カールの使用をサポートするトランスポート層セキュリティ(TLS、別名SSL)を使用してデータ転送を行います。TLSの実装は非常に難しいため、cURLはこれを外部ライブラリに委任します。cURLはこの目的のためにいくつかの異なるライブラリをサポートしており、ビルド時に1つを選択する必要があります(curlとlibcurlのインストール方法、セクション「TLS バックエンドの選択」を参照してください)。TLS ライブラリとして使用する最も一般的なオプションは次のとおりです。
- オープンSSL(cURL のデフォルト)
- ネットワークセキュリティサービス(NSS)
- TLS の
どれを選択するかは、いくつかの要因(ライセンス、パフォーマンス、サポートされている暗号化アルゴリズムなどの正確な機能セットなど)によって異なりますが、それらはすべてほとんど同じ機能を提供します。
Ubuntu では、ユーザーが使用する cURL のバリアントを選択できるようにしたいため、さまざまな TLS ライブラリに対して cURL をビルドし、それらを個別のパッケージとして提供しています。Ubuntu bionic (18.04LTS) の時点では、バリアントは次のとおりです。
- libcurl4-gnutls-dev
- libcurl4-nss-dev
- libcurl4-openssl-dev
したがって、使用したい TLS ライブラリに適したバリアントをインストールしてください。特に好みがない場合は、デフォルトのバリアント (OpenSSL を使用) をインストールしてください。