私は最初からbeaglebone black用のUbuntuカーネルを構築したいと思います。カーネルのソースコードをダウンロードできる場所を2日以上見つけましたが、何も見つかりませんでした。
それでは、カーネルソースコードはどこで入手できるのか教えてください。
答え1
duckduckgo.comのUbuntuカーネルソースコードの最初の結果は次のとおりです。https://wiki.ubuntu.com/Kernel/SourceCodeUbuntuカーネルを取得してコンパイルするプロセスについて説明します。ここで再現します。
すべての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
たとえば、マーベリックツリーを取得します。
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
その後、新しいコミットを追加するなど、リリースを操作できます。