Android/AOSP:关于 "missing ranchu kernel" 的有趣问题
Android/AOSP: Fun & Qs about the "missing ranchu kernel"
在我从 AOSP 源代码构建 Android 之后,official guide 提示启动 emulator
是所有需要做的事情。遗憾的是,这对我不起作用...
(我正在为 Nexus 7 构建 "deb",Android Studio 不参与,甚至不在这台机器上。)
emulator: ERROR: bad workspace: cannot find prebuilt ranchu kernel in: ~/aosp/prebuilts/qemu-kernel/arm/ranchu/kernel-qemu
emulator: ERROR: This AVD's configuration is missing a kernel file! Please ensure the file "kernel-ranchu" is in the same location as your system image.
emulator: ERROR: ANDROID_SDK_ROOT is defined (~/aosp/sdk) but cannot find kernel file in ~/aosp/sdk/system-images/ sub directories
我的 ANDROID_SDK_ROOT
设置正确吗? 有人会猜测它应该是 ~/aosp/sdk
,但显然模拟器期望 system-images
在 ${ANDROID_SDK_ROOT}/
。不过我的 system-images
住在 ~/aosp/prebuilts/devtools
。
当我将其更改为 ~/aosp/prebuilts/devtools
时,它仍然不够好:
...
emulator: ERROR: ANDROID_SDK_ROOT is defined (~/aosp/prebuilts/devtools) but cannot find kernel file in ~/aosp/prebuilts/devtools/system-images/ sub directories
但这些子目录中实际上有几个kernel-ranchu
文件:
~/aosp/prebuilts/devtools/system-images/android-23/android-tv/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/default/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/default/x86_64/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/google_apis/armeabi-v7a/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/google_apis/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/google_apis/x86_64/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/android-tv/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/android-wear/armeabi-v7a/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/android-wear/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/google_apis/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/google_apis/x86_64/kernel-ranchu
哪一个是正确的,我如何将它传送到模拟器?
我尝试了几个 -kernel <kernel>
,但要么我遇到了致命的内存错误(对于 x86_64-based 个),要么我得到了一个黑屏模拟器和一个弹出窗口,说基于 x86 的模拟器会更快(与google_apis/armeabi-v7a.)最后一个我等了几十分钟,什么都没发生,还是黑屏,连"android"的logo都没有。可能是因为在输出中间有以下消息:
ERROR: resizing partition e2fsck failed with exit code 8
...奇怪的是进程没有终止,不确定错误有多严重。
问题在于,只有一小部分目标旨在 运行 模拟器中。名字中有特定符文的人("deb")没有福气
经过几天与 aosp_deb-userdebug 和 -eng 的斗争,我尝试了 full-eng
并且那个很有魅力。
Select 你的 CPU/ABI 到 Google APIs Intel Atom (x86_64) 当创建模拟器 AVD
在我从 AOSP 源代码构建 Android 之后,official guide 提示启动 emulator
是所有需要做的事情。遗憾的是,这对我不起作用...
(我正在为 Nexus 7 构建 "deb",Android Studio 不参与,甚至不在这台机器上。)
emulator: ERROR: bad workspace: cannot find prebuilt ranchu kernel in: ~/aosp/prebuilts/qemu-kernel/arm/ranchu/kernel-qemu
emulator: ERROR: This AVD's configuration is missing a kernel file! Please ensure the file "kernel-ranchu" is in the same location as your system image.
emulator: ERROR: ANDROID_SDK_ROOT is defined (~/aosp/sdk) but cannot find kernel file in ~/aosp/sdk/system-images/ sub directories
我的 ANDROID_SDK_ROOT
设置正确吗? 有人会猜测它应该是 ~/aosp/sdk
,但显然模拟器期望 system-images
在 ${ANDROID_SDK_ROOT}/
。不过我的 system-images
住在 ~/aosp/prebuilts/devtools
。
当我将其更改为 ~/aosp/prebuilts/devtools
时,它仍然不够好:
...
emulator: ERROR: ANDROID_SDK_ROOT is defined (~/aosp/prebuilts/devtools) but cannot find kernel file in ~/aosp/prebuilts/devtools/system-images/ sub directories
但这些子目录中实际上有几个kernel-ranchu
文件:
~/aosp/prebuilts/devtools/system-images/android-23/android-tv/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/default/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/default/x86_64/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/google_apis/armeabi-v7a/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/google_apis/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-23/google_apis/x86_64/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/android-tv/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/android-wear/armeabi-v7a/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/android-wear/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/google_apis/x86/kernel-ranchu
~/aosp/prebuilts/devtools/system-images/android-25/google_apis/x86_64/kernel-ranchu
哪一个是正确的,我如何将它传送到模拟器?
我尝试了几个 -kernel <kernel>
,但要么我遇到了致命的内存错误(对于 x86_64-based 个),要么我得到了一个黑屏模拟器和一个弹出窗口,说基于 x86 的模拟器会更快(与google_apis/armeabi-v7a.)最后一个我等了几十分钟,什么都没发生,还是黑屏,连"android"的logo都没有。可能是因为在输出中间有以下消息:
ERROR: resizing partition e2fsck failed with exit code 8
...奇怪的是进程没有终止,不确定错误有多严重。
问题在于,只有一小部分目标旨在 运行 模拟器中。名字中有特定符文的人("deb")没有福气
经过几天与 aosp_deb-userdebug 和 -eng 的斗争,我尝试了 full-eng
并且那个很有魅力。
Select 你的 CPU/ABI 到 Google APIs Intel Atom (x86_64) 当创建模拟器 AVD