srcバージョン3.*と3.*-一般の違いは何ですか?

srcバージョン3.*と3.*-一般の違いは何ですか?

私のローカルLinux / Ubuntuには2つのLinux srcディレクトリがあります。

/usr/src/linux-3.16.0
/usr/src/linux-3.16.0-generic

私は3.16.0-genericより3.16.0にはるかに多くのコードがあることを発見しました。これらの2つのディレクトリがなぜそしてどう違うのか知りたいです(何を表しますか?)

ベストアンサー1

これら2つのディレクトリは、カーネルのヘッ​​ダーファイルを含む対応するパッケージから提供されます。コマンドを使用してdpkgディレクトリを提供するパッケージを見つけます。

$ dpkg -S /usr/src/linux*
linux-headers-X.XX.X-XX: /usr/src/linux-headers-X.XX.X-XX
linux-headers-X.XX.X-XX-generic: /usr/src/linux-headers-X.XX.X-XX-generic
...

最初のディレクトリには、/usr/src/linux-headers-X.X.XX-XXx86、amd64、powerpcなどを含む複数のアーキテクチャ用のヘッダファイルが含まれており、ファイル数が多く、パッケージサイズも大きくなります。

別のディレクトリには、/usr/src/linux-headers-X.X.XX-XX-generic主にローカルインストール用のx86アーキテクチャに関連するソースコードが含まれているようです。

そのパッケージはすでに説明に示されています。例:

$ apt-cache show linux-headers-3.16.0-25 | grep -A3 Description-en
Description-en: Header files related to Linux kernel version 3.16.0
 This package provides kernel header files for version 3.16.0, for sites
 that want the latest kernel headers. Please read
 /usr/share/doc/linux-lts-utopic-headers-3.16.0-25/debian.README.gz for details

私が知っている限り、これら2つのディレクトリにはバイナリではなくソースコードのみが含まれています。 2つの主な違いは次のとおりです。ターゲットアーキテクチャソースコード

関連:カーネルソースツリーには何が含まれていますか?これはLinuxカーネルヘッダファイルに関連していますか?

詳しい回答(2015.07.30)

関連コードが保存されていますが、x862つのディレクトリにあるコードの違いは何ですか?x86— Richardが2015年7月29日19:11に

/usr/src/linux-headers-X.X.XX-XX-genericに含まれるほとんどのディレクトリとファイルは/usr/src/linux-headers-X.X.XX-XXarch/x86asm*-generic

configこれら2つのパッケージの間に見られるもう1つの主な違いは、対応とgeneratedディレクトリがあることです*-generic

*-generic私が理解しているように、このディレクトリにはアーキテクチャ依存モジュールを設定してコンパイルするために必要なヘッダファイルが含まれていると思いますx86いいえ予期せず変更されましたlinux-headers-x.x.xx-xx

最も重要なのは、これら2つのディレクトリが、そのプラットフォームでパッケージをパッケージ化してコンパイルする「クリーン」な方法である可能性があることです。しかし、私はこの問題を明確にする資格がありません。


回答者のメモ:私はこの答えを素朴に書きました。何が正しいか間違っているのかわからないので、おそらく途中でいくつかの説明がありません。したがって、この回答は現在コミュニティウィキなので、最小限の評判を持つ人なら誰でもこの文書を改善して違いを完全に説明できます。

おすすめ記事