首页 > 解决方案 > 生成的 system.img 不在模拟器上运行

问题描述

我想为 Android 电视构建自定义 rom。

我已按照 AOSP 网站上给出的步骤,并使用以下命令下载了源代码:

repo init -u https://android.googlesource.com/platform/manifest -b master
repo sync -j16 -c

source build/envsetup.sh
lunch aosp_x86-eng

要构建系统映像,我使用以下命令:

make -j16

它使用最新的 Q 版本来构建:

PLATFORM_VERSION_CODENAME=Q
PLATFORM_VERSION=Q
TARGET_PRODUCT=aosp_x86
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=LiveTv
TARGET_ARCH=x86
TARGET_ARCH_VARIANT=x86
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.4.0-130-generic-x86_64-Ubuntu-16.04.4-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=OC-MR1
OUT_DIR=out

构建总是成功的。system.img并且ramdisk.img也是生成的。

我想在模拟器上测试系统映像。我使用了以下命令:

./emulator -avd tvrom -sysdir out/target/product/generic_x86/ -system out/target/product/generic_x86/system.img -ramdisk out/target/product/generic_x86/ramdisk.img -data out/target/product/generic_x86/userdata.img -kernel prebuilts/qemu-kernel/x86/kernel-qemu

avd 名称是 tvrom,其他参数是我构建的系统映像的路径。

但是在这样做之后,system.img没有在模拟器中启动并且它仍然是黑屏。

此外,终端打印错误:

Segmentation fault (core dumped)

我搜索了它,但没有找到任何解决方案。有人可以帮忙吗?

编辑

如果有人提供了在 Android Emulator 上刷新和启动最新的 AOSP_X86 或 AOSP_X86_64 定制 ROM 的步骤列表,那么它将很有用。

标签: javaandroidlinuxandroid-emulatorandroid-source

解决方案


推荐阅读