apt-file
私はDebianで何かを確認していましたが、CORE Perlモジュールを検索しているScalar/Util.pm
3つの結果を見ました。
$ apt-file search Scalar/Util.pm
libperl5.34: /usr/lib/x86_64-linux-gnu/perl/5.34.0/Scalar/Util.pm
libscalar-list-utils-perl: /usr/lib/x86_64-linux-gnu/perl5/5.34/Scalar/Util.pm
perl-base: /usr/lib/x86_64-linux-gnu/perl-base/Scalar/Util.pm
これは3分の2が意味があります。なぜなら
libscalar-list-utils-perl
CPANのパッケージを表します。libperl5.34
perl-base
Perlのパッケージを表します。
しかし、理解できないのは、なぜこれら2つのパッケージが同じモジュールの同じバージョンを持っているのかということです。
libperl5.34
perl-base
現在、次のperl-base
ように説明されています。
このパッケージは、基本的なタスクを実行するために必要なPerlインタプリタと標準のランタイムライブラリの小さなサブセットを提供します。 Perl を完全にインストールするには、「perl」(およびその依存関係「perl-modules-5.34」および「perl-doc」)をインストールします。
次のように説明しますlibperl5.34
。
このパッケージには、Perlインタプリタが組み込まれているアプリケーションで使用できる共有Perlライブラリが含まれています。また、標準ライブラリのアーキテクチャに依存する部分も含まれています(アーキテクチャに依存しない部分を含むperl-modules-5.34に依存します)。
同じモジュールをperl-base
パッケージ化する技術的な理由はありますか?libperl5.34
なぜperl
両方に依存するのですか?
答え1
perl-base
perl
二次バイナリやドキュメントなしでバイナリと最小限のモジュールセットが提供されます。コメントで指摘したように、これらのモジュールのドキュメントは削除されました。
perl
予想されるすべてのバイナリとドキュメントを含む完全なPerl環境が提供されています。これはバイナリ自体がある場所perl-base
なので依存しており、アーキテクチャ依存モジュールがある場所なので依存します。perl
libperl5.34
perl-base
すべてのDebianベースのシステムにインストールされる重要なパッケージなので、できるだけ小さく保ちます。perl
必須ではなく、Debian ベースのシステムはそれなしで可能です。