ビーグルボーンブラックのカーネルソースコード

ビーグルボーンブラックのカーネルソースコード

beaglebone black 用に Ubuntu カーネルをゼロから構築したいと考えています。カーネル ソース コードをダウンロードできる場所を 2 日以上探していますが、何も見つかりません。

それで、カーネルのソースコードをどこから入手できるか教えてください。

答え1

duckduckgo.comのUbuntuカーネルソースコードの最初の結果はhttps://wiki.ubuntu.com/カーネル/ソースコードこれは、Ubuntu カーネルの取得とコンパイルのプロセスを説明しています。ここで再現します。

Ubuntuカーネルのソースはすべてgitで管理されています。各リリースのソースはkernel.ubuntu.comの独自のgitリポジトリで管理されています。これらはgitwebで参照できます。公式のUbuntuツリーはubuntu/ディレクトリにあります。Ubuntu Linuxカーネルのgitリポジトリはgit://kernel.ubuntu.com/ubuntu/ubuntu-.gitまたは http://kernel.ubuntu.com/git-repos/ubuntu/ubuntu-.git。ローカル コピーを取得するには、以下のように、興味のあるリリースのリポジトリを git clone するだけです。git コマンドは、git-core パッケージの一部です。

git clone git://kernel.ubuntu.com/ubuntu/ubuntu-<release>.git

たとえば、maverick ツリーを取得するには、次のようにします。

git clone git://kernel.ubuntu.com/ubuntu/ubuntu-maverick.git

これによって数百メガバイトのデータがダウンロードされます。複数のカーネル リリースで作業する予定の場合は、アップストリーム カーネル ツリーをダウンロードすることでスペースと時間を節約できます。これらの 2 つのツリーが結合されると、Ubuntu ツリーに損傷を与えずにバージン Linus ツリーを削除することはできないことに注意してください。

git clone git://kernel.ubuntu.com/ubuntu/linux.git
git clone --reference linux git://kernel.ubuntu.com/ubuntu/ubuntu-karmic.git
git clone --reference linux git://kernel.ubuntu.com/ubuntu/ubuntu-maverick.git

いずれの場合も、ソースと完全な履歴を含む新しいディレクトリ ubuntu- が作成され、各ディレクトリ内から git コマンドを使用して操作できるようになります。

デフォルトでは、カーネル ツリーの最新バージョン、つまりマスター ツリーが存在します。リリース タグを使用して、以前にリリースされたカーネル バージョンに切り替えることができます。リリース内のタグ付きバージョンの完全なリストを取得するには、次のようにします。

$ git tag -l Ubuntu-*
Ubuntu-2.6.27-7.10
Ubuntu-2.6.27-7.11
Ubuntu-2.6.27-7.12
Ubuntu-2.6.27-7.13
Ubuntu-2.6.27-7.14
$

2.6.27-7.13 バージョンを確認するには、そのバージョンを指す新しいブランチをチェックアウトするだけです。

git checkout -b temp Ubuntu-2.6.27-7.13

その後、新しいコミットを追加するなど、リリースを操作できます。

関連情報