私は自分のカスタムカーネルをAndroidエミュレータで使用するためにビルドするのが好きです。自分のAndroidエミュレータイメージを構築する方法と、エミュレータを起動するときに使用するカーネルを設定する方法を知っています。しかし、私はエミュレータ用のカスタムカーネルを構築する方法と、そこにあるべきなんて考えていません。Androidエミュレータ用のカーネルはどのように構築できますか?
私にはいくつかのスタートポイントがありますか?
私は自分のカスタムカーネルをAndroidエミュレータで使用するためにビルドするのが好きです。自分のAndroidエミュレータイメージを構築する方法と、エミュレータを起動するときに使用するカーネルを設定する方法を知っています。しかし、私はエミュレータ用のカスタムカーネルを構築する方法と、そこにあるべきなんて考えていません。Androidエミュレータ用のカーネルはどのように構築できますか?
私にはいくつかのスタートポイントがありますか?
goneの共通カーネルソースは、android.git.kernel.org(kernel/common.git)からgitできます。 クローン作成後、リモートブランチの起点をチェックアウトします。/ android-goldfish-2.6.29。 次に、エミュレータのカーネルイメージを構築できます。設定にはarch/arm/configs/goldfish_defconfigを使用してください。
Android URLを試してください。下部には、ソースの作成方法に関する詳細な説明があります。
最後に、の最終ビルドに従ってください(これは夢のリリース用です)。私はこの手順を他のリリースにも適しているはずです。
2012年5月現在、手順が変更されています。 goldfish(エミュレータ)は、次のところに独自のgitリポジトリを持っています。https://android.googlesource.com/kernel/goldfish.git
このリポジトリを使用するには、既知の優れたカーネルのコミットIDが必要です。 (デフォルトでは、最初のクローンの後、リポジトリは裸です)。ファイルの最後のgitログメッセージを見ることによって、コミットIDを見つけることができるはずです:prebuilts/qemu-kernel/arm/kernel-qemu -armv7(エミュレータのためのあらかじめビルドされたカーネル)。
これは、 'git checkout -b mybranch < commit id>' を実行して、 'make goldfish_defconfig'を実行してから 'make'を実行することで、金魚のリポジトリで使用できます。
カーネルを使用するには、$ ANDROID_PRODUCT_OUT/kernel_qemuに入れます(通常は out/target/product/generic/kernel_qemu)。エミュレータはそれを自動的に見つけます。