2

金魚カーネルに構成変更の一部をロードして、Android ソースからエミュレーターを実行しようとしています。これについて多くの質問を見つけましたが、答えが見つかりませんでした。1. Android ソースをダウンロードしました。2. 金魚カーネルのビルドにも成功しました。これで、/goldfish/arch/arm/boot フォルダーに zImage が表示されます。この後、似たような質問をたくさん参考にして、このエミュレータを動かしてみました。 ソース エミュレーターと AVDから Android をビルドする方法、ソースから Android をビルドした後にエミュレーターを実行する方法、Android goldfish 3.4 カーネルをコンパイルしてエミュレーターで実行する方法。しかし、残念ながら私の問題は解決しませんでした。エミュレーターを実行しようとすると:

./emulator -debug init -kernel Thepath/goldfish/arch/arm/boot/zImage -avd firstAvd -wipe-data

AVD が見つからないというエラーが表示されます。次に、このブログhttps://yaapb.wordpress.com/2012/09/22/build-a-custom-android-emulator-image/を見つけました。ここでは、最初に次のコマンドでソースツリーからエミュレーターを作成するように指示されています:

$ source build/envsetup.sh
$ lunch full-eng
$ make -j4
$ emulator -wipe-data &

次に、変更したカーネルでエミュレーターを実行するには、次を実行する必要があります。

$ cd ${ANDROID_BUILD_TOP}
$ emulator -kernel ~/workspace/android/goldfish/arch/arm/boot/zImage -wipe-data &

私はこれをやろうとしていますが、make コマンドでエミュレーターを作成するプロセスには何時間もかかります。今まで90分で7%。それまでの間、自分のカーネルでエミュレーターを実行するには、最初にソースからエミュレーターを作成する必要があるかどうかを誰かに教えてもらえないか知りたいと思っていました。また、Android ソース ツリーに system.img、ramdisk.img ファイルが見つかりません。それは正常ですか、それともエミュレータを作成するときにそれらを取得しますか?

**

編集

** また、make -j4 なしでエミュレーターを実行できるかどうかも知りたいです。Android ソース ツリーには SDK も含まれています。SDK からエミュレーターを実行できますか? はいの場合、どのように?Google の公式ドキュメントでは、sdk の /tools フォルダーから次のコマンドを実行するように指示されています。ただし、sdk フォルダーに tools フォルダーはありません。

4

1 に答える 1

0

ソースをビルドした後、エミュレーターを使用するためにビルド プロセスを再度実行しないでください。AOSP コードのあるフォルダーに移動し、次のコマンドを実行するだけです。

$ cd ${ANDROID_BUILD_TOP}
$ source build/envsetup.sh
$ emulator -kernel ~/workspace/android/goldfish/arch/arm/boot/zImage -wipe-data &

このコマンドsource build/envsetup.shはシェルに追加のコマンドを追加し、最初からもう一度ビルドしなくてもエミュレーターを実行できるはずです。

于 2017-01-25T21:37:39.667 に答える