ARMアーキテクチャ用のカスタムカーネルを構築するには、次のものが必要です。
a) kernel.orgからカーネルをダウンロードし、カーネルを変更し、いくつかのクロスコンパイラ(ソースなど)を使ってビルドします。
b) どこかでARM固有のカーネルを見つけ、いくつかのパッチを探し、いくつかのARM固有のツールを使ってコンパイルしますか?
ARMアーキテクチャ用にカスタムコアを構築できますか?
私は一般的にカーネルについてほとんど知りません。
答え1
Linuxカーネルソースコードtarballとgitリポジトリには、サポートされているすべてのアーキテクチャ(ARMなど)のコードが含まれています。
このサブディレクトリには、Documentation/arm/
続行する前に確認する必要がある一部のARM関連ドキュメントが含まれています。
ARM固有のコードはサブディレクトリにありますarch/arm/
。一部のARM関連ドライバはdrivers/*/
サブディレクトリにある場合があります。
だから、kernel.orgから通常のカーネルタールボールをダウンロードし、Documentation/arm/README
次のように読み始めます。
カーネルのコンパイル
ARM Linux用にコンパイルするには、GNU拡張機能を使用してARM ELFコードを生成できるコンパイラが必要です。 GCC 3.3既知...
この記事を読んだ後は、多くの回答を得ることができるようです(そして、もっと質問があるかもしれませんが、躊躇しないでください。)。
答え2
カーネルのソースコードは、すべてのアーキテクチャで同じです。いくつかのアーキテクチャ固有のアセンブリを使用して主にCで書かれています。
ARM用にビルドする最も簡単な方法は、すでにARMで実行することです。その後、通常のコンパイル文書に従うだけです。
別のアーキテクチャでビルドする場合は、これをクロスコンパイルと呼びます。私はこれを自分でやったことはありませんが、これを行うにはクロスコンパイルツールチェーンを設定する必要があることを知っています。
このガイドそれから始めなければなりません。