I'm newer to AOSP building, but now have successfully built various AOSP 
build configurations, but never been able to boot a built image. I'm on 
macOS (BigSur). Any insights/gotchas would be super helpful.

I mainly use a M1 mac (aarm64), but have also tried on an Intel (x86_64), 
tried multiple image builds on each, but same result - black screen on 
boot. ADB show the emulator as offline once launched so it doesn't seem to 
be specific to a graphical issue more likely a boot.

What I have tried the following builds:

   - aosp_x86_64-userdebug
   - aosp_x86_64-eng
   - aosp_arm64-eng
   - sdk_phone_arm64-userdebug
   - aosp_tv_arm64-eng

Branches:

   - mainline
   - android11_r37

Machines/architectures

   - macOS BigSur, M1 (aarm64) 16GB
   - macOS BigSur, Intel (x86_64) 32GB

Building AOSP is not a problem, except when it comes to the M1 and needing 
the 11.x MacOSSDK. I was able to patch the build in necessary places to 
build to completion - this is all in build/soong so it's not the actual 
AOSP code needing a change.

I have also tried various GPU options when launching the emulator in case 
of graphical rendering issues. There's some hiccups with CoreAudio not 
initializing on the M1 Mac, but disabling audio (-noaudio) gets around this.

As far as I can tell nothing is wrong from using -debug-init and -verbose 
emulator 
flags. All the image files are there, as far as I can tell

Here's the log of the latest M1 build using aosp_tv_arm64-eng:

emulator: Android emulator version 30.3.5.0 (build_id 7036990) (CL:N/A) 
emulator: Found ANDROID_PRODUCT_OUT: 
/Volumes/android/out/target/product/generic_arm64 emulator: Found build 
target architecture: arm64 emulator: argv[0]: 
'/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/emulator'; program directory: 
'/Users/builduser/Downloads/Android Emulator.app/Contents/MacOS/emulator' 
emulator: emuDirName: '/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator' emulator: try dir 
/Users/builduser/Downloads/Android Emulator.app/Contents/MacOS/emulator 
emulator: Trying emulator path '/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/qemu/darwin-aarch64/qemu-system-aarch64' 
emulator: Found target-specific 64-bit emulator binary: 
/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/qemu/darwin-aarch64/qemu-system-aarch64 
emulator: Adding library search path: '/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib64' emulator: Adding library search 
path: '/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib64/gles_angle' emulator: Adding 
library search path: '/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib64/gles_angle9' emulator: Adding 
library search path: '/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib64/gles_angle11' emulator: Adding 
library search path: '/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib64/gles_swiftshader' emulator: 
Adding library search path for Qt: '/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib64/qt/lib' emulator: Silencing all 
qWarning(); use qCWarning(...) instead: 
QT_LOGGING_RULES=default.warning=false emulator: Setting Qt plugin search 
path: QT_QPA_PLATFORM_PLUGIN_PATH=/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib64/qt/plugins emulator: Setting Qt 
to use software OpenGL: QT_OPENGL=software emulator: Setting QML to use 
software QtQuick2D: QMLSCENE_DEVICE=softwarecontext emulator: Overriding 
pre-existing bad Qt high dpi settings... emulator: Running 
:/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/qemu/darwin-aarch64/qemu-system-aarch64 
emulator: qemu backend: argv[00] = "/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/qemu/darwin-aarch64/qemu-system-aarch64" 
emulator: qemu backend: argv[01] = "-noaudio" emulator: qemu backend: 
argv[02] = "-verbose" emulator: Concatenated backend parameters: 
'/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/qemu/darwin-aarch64/qemu-system-aarch64' 
-noaudio -verbose emulator: found Android build root: 
/Volumes/android/out/target/product/generic_arm64 emulator: found Android 
build out: /Volumes/android/out/target/product/generic_arm64 emulator: 
Cannot find boot properties file: 
/Volumes/android/out/target/product/generic_arm64/boot.prop emulator: Found 
target API sdkVersion: 30 emulator: Invalid int property: 
'ro.build.version.incremental:eng.paulba.20210518.135049' emulator: 
autoconfig: -skin HVGA emulator: autoconfig: -skindir (null) emulator: 
autoconfig: -kernel 
/Volumes/android/out/target/product/generic_arm64/kernel-ranchu emulator: 
Target arch = 'arm64' emulator: Auto-detect: Kernel image requires new 
device naming scheme. emulator: Auto-detect: Kernel does not support YAFFS2 
partitions. emulator: autoconfig: -ramdisk 
/Volumes/android/out/target/product/generic_arm64/ramdisk.img emulator: 
autoconfig: -sysdir /Volumes/android/out/target/product/generic_arm64 
emulator: Using initial system image: 
/Volumes/android/out/target/product/generic_arm64/system.img emulator: 
system partition size adjusted to match image file (1055 MB > 800 MB) 
emulator: Using initial vendor image: 
/Volumes/android/out/target/product/generic_arm64/vendor.img emulator: 
autoconfig: -data 
/Volumes/android/out/target/product/generic_arm64/userdata-qemu.img 
emulator: autoconfig: -initdata 
/Volumes/android/out/target/product/generic_arm64/userdata.img emulator: 
autoconfig: -cache 
/Volumes/android/out/target/product/generic_arm64/cache.img emulator: INFO: 
ignore sdcard for arm at api level >= 30 emulator: Physical RAM size: 
2048MB emulator: VM heap size 0MB is below hardware specified minimum of 
512MB,setting it to that value emulator: System image is read only 
emulator: autoconfig: -no-snapshot from AVD config.ini emulator: Found 1 
DNS servers: 192.168.4.1 emulator: skin name 'HVGA' aliased to '320x480' 
emulator: found magic skin width=320 height=480 bpp=16 emulator: registered 
'boot-properties' qemud service emulator: Adding boot property: 
'qemu.cmdline' = 'androidboot.logcat=v:* 
androidboot.consolepipe=qemu_pipe,pipe:logcat' emulator: Adding boot 
property: 'qemu.logcat' = 'start' emulator: WARNING: encryption is off 
emulator: CPU Acceleration: working emulator: CPU Acceleration status: 
Hypervisor.Framework OS X Version 11.4 handleCpuAcceleration: feature check 
for hvf emulator: VERBOSE: AdbInterface.cpp:356: no root specified: 
emulator: VERBOSE: AdbInterface.cpp:356: no root specified: emulator: 
VERBOSE: AdbInterface.cpp:386: Found: 1 adb executables emulator: VERBOSE: 
AdbInterface.cpp:388: Adb: 
/Volumes/android/out/soong/host/darwin-x86/bin/adb emulator: VERBOSE: 
AdbInterface.cpp:410: 
Path:/Volumes/android/out/soong/host/darwin-x86/bin/adb protocol version: 
41 emulator: GPU emulation enabled using 'host' mode emulator: Initializing 
hardware OpenGLES emulation support emulator: VERBOSE: 
MultiDisplay.cpp:325: create display 0 emulator: VERBOSE: 
MultiDisplay.cpp:414: setDisplayPose 0 x 0 y 0 w 320 h 480 dpi 0 cannot add 
library /Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/qemu/darwin-aarch64/lib64/vulkan/libvulkan.dylib:
 
failed cannot add library /Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib64/vulkan/libvulkan.dylib: failed 
cannot add library /Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/qemu/darwin-aarch64/lib64/vulkan/libMoltenVK.dylib:
 
failed added library /Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib64/vulkan/libMoltenVK.dylib 
[mvk-info] MoltenVK version 1.1.1. Vulkan version 1.1.154. The following 70 
Vulkan extensions are supported: (Elided for brevity) [mvk-info] Created 
VkInstance with the following 0 Vulkan extensions enabled: [mvk-info] Using 
MTLFence for Vulkan semaphores. [mvk-info] Created VkDevice to run on GPU 
Apple M1 with the following 0 Vulkan extensions enabled: emulator: VERBOSE: 
load_config.cpp:242: Verified boot params were not found. emulator: INFO: 
ignore sdcard for arm at api level >= 30 emulator: Found 1 DNS servers: 
192.168.4.1 Content of hardware configuration file: hw.cpu.arch = arm64 
hw.cpu.ncore = 2 hw.ramSize = 2048 (Elided for brevity) . QEMU options 
list: emulator: argv[00] = "/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/qemu/darwin-aarch64/qemu-system-aarch64" 
emulator: argv[01] = "-dns-server" emulator: argv[02] = "192.168.4.1" 
emulator: argv[03] = "-no-audio" emulator: argv[04] = "-serial" emulator: 
argv[05] = "null" emulator: argv[06] = "-cpu" emulator: argv[07] = 
"cortex-a53" emulator: argv[08] = "-machine" emulator: argv[09] = 
"type=virt" emulator: argv[10] = "-enable-hvf" emulator: argv[11] = "-smp" 
emulator: argv[12] = "cores=2" emulator: argv[13] = "-m" emulator: argv[14] 
= "2048" emulator: argv[15] = "-lcd-density" emulator: argv[16] = "320" 
emulator: argv[17] = "-nodefaults" emulator: argv[18] = "-kernel" emulator: 
argv[19] = 
"/Volumes/android/out/target/product/generic_arm64/kernel-ranchu" emulator: 
argv[20] = "-initrd" emulator: argv[21] = 
"/Volumes/android/out/target/product/generic_arm64/ramdisk.img" emulator: 
argv[22] = "-drive" emulator: argv[23] = 
"index=0,id=vendor,if=none,file=/Volumes/android/out/target/product/generic_arm64/vendor.img,read-only"
 
emulator: argv[24] = "-device" emulator: argv[25] = 
"virtio-blk-device,drive=vendor" emulator: argv[26] = "-drive" emulator: 
argv[27] = 
"index=1,id=userdata,if=none,file=/Volumes/android/out/target/product/generic_arm64/userdata-qemu.img.qcow2,overlap-check=none,cache=unsafe,l2-cache-size=1048576"
 
emulator: argv[28] = "-device" emulator: argv[29] = 
"virtio-blk-device,drive=userdata" emulator: argv[30] = "-drive" emulator: 
argv[31] = 
"index=2,id=cache,if=none,file=/Volumes/android/out/target/product/generic_arm64/cache.img.qcow2,overlap-check=none,cache=unsafe,l2-cache-size=1048576"
 
emulator: argv[32] = "-device" emulator: argv[33] = 
"virtio-blk-device,drive=cache" emulator: argv[34] = "-drive" emulator: 
argv[35] = 
"index=3,id=system,if=none,file=/Volumes/android/out/target/product/generic_arm64/system.img,read-only"
 
emulator: argv[36] = "-device" emulator: argv[37] = 
"virtio-blk-device,drive=system" emulator: argv[38] = "-netdev" emulator: 
argv[39] = "user,id=mynet" emulator: argv[40] = "-device" emulator: 
argv[41] = "virtio-net-device,netdev=mynet" emulator: argv[42] = "-device" 
emulator: argv[43] = "virtio-rng-device" emulator: argv[44] = 
"-show-cursor" emulator: argv[45] = "-L" emulator: argv[46] = 
"/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib/pc-bios" emulator: argv[47] = 
"-soundhw" emulator: argv[48] = "hda" emulator: argv[49] = "-append" 
emulator: argv[50] = "qemu=1 no_timer_check androidboot.hardware=ranchu 
androidboot.serialno=EMULATOR30X3X5X0 keep_bootcon earlyprintk=ttyAMA0 
android.qemud=1 console=0 android.checkjni=1 qemu.gles=1 
qemu.settings.system.screen_off_timeout=2147483647 qemu.vsync=60 
qemu.gltransport=pipe qemu.gltransport.drawFlushInterval=800 
qemu.opengles.version=196608 qemu.uirenderer=skiagl cma=260M@0-4G 
loop.max_part=7 androidboot.boot_devices=a003800.virtio_mmio 
qemu.dalvik.vm.heapsize=512m qemu.camera_protocol_ver=1 printk.devkmsg=on" 
emulator: argv[51] = "-android-hw" emulator: argv[52] = 
"/Volumes/android/out/target/product/generic_arm64/hardware-qemu.ini" 
Concatenated QEMU options: '/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/qemu/darwin-aarch64/qemu-system-aarch64' 
-dns-server 192.168.4.1 -no-audio -serial null -cpu cortex-a53 -machine 
type=virt -enable-hvf -smp cores=2 -m 2048 -lcd-density 320 -nodefaults 
-kernel /Volumes/android/out/target/product/generic_arm64/kernel-ranchu 
-initrd /Volumes/android/out/target/product/generic_arm64/ramdisk.img 
-drive 
index=0,id=vendor,if=none,file=/Volumes/android/out/target/product/generic_arm64/vendor.img,read-only
 
-device virtio-blk-device,drive=vendor -drive 
index=1,id=userdata,if=none,file=/Volumes/android/out/target/product/generic_arm64/userdata-qemu.img.qcow2,overlap-check=none,cache=unsafe,l2-cache-size=1048576
 
-device virtio-blk-device,drive=userdata -drive 
index=2,id=cache,if=none,file=/Volumes/android/out/target/product/generic_arm64/cache.img.qcow2,overlap-check=none,cache=unsafe,l2-cache-size=1048576
 
-device virtio-blk-device,drive=cache -drive 
index=3,id=system,if=none,file=/Volumes/android/out/target/product/generic_arm64/system.img,read-only
 
-device virtio-blk-device,drive=system -netdev user,id=mynet -device 
virtio-net-device,netdev=mynet -device virtio-rng-device -show-cursor -L 
'/Users/builduser/Downloads/Android 
Emulator.app/Contents/MacOS/emulator/lib/pc-bios' -soundhw hda -append 
'qemu=1 no_timer_check androidboot.hardware=ranchu 
androidboot.serialno=EMULATOR30X3X5X0 keep_bootcon earlyprintk=ttyAMA0 
android.qemud=1 console=0 android.checkjni=1 qemu.gles=1 
qemu.settings.system.screen_off_timeout=2147483647 qemu.vsync=60 
qemu.gltransport=pipe qemu.gltransport.drawFlushInterval=800 
qemu.opengles.version=196608 qemu.uirenderer=skiagl cma=260M@0-4G 
loop.max_part=7 androidboot.boot_devices=a003800.virtio_mmio 
qemu.dalvik.vm.heapsize=512m qemu.camera_protocol_ver=1 printk.devkmsg=on' 
-android-hw 
/Volumes/android/out/target/product/generic_arm64/hardware-qemu.ini 
emulator: Android qemu version 30.3.5.0 (build_id 7036990) (CL:N/A) 
emulator: Starting QEMU main loop emulator: Adding boot property: 
'ro.opengles.version' = '196608' emulator: Adding boot property: 
'qemu.sf.fake_camera' = 'none' emulator: Adding boot property: 
'dalvik.vm.heapsize' = '512m' emulator: Adding boot property: 
'qemu.hw.mainkeys' = '0' emulator: Adding boot property: 
'qemu.sf.lcd_density' = '320' emulator: goldfish_events.have-dpad: false 
emulator: goldfish_events.have-trackball: true emulator: 
goldfish_events.have-camera: false emulator: goldfish_events.have-keyboard: 
true emulator: goldfish_events.have-lidswitch: false emulator: 
goldfish_events.have-tabletmode: false emulator: 
goldfish_events.have-touch: false emulator: 
goldfish_events.have-multitouch: true emulator: control console listening 
on port 5554, ADB on port 5555 Not using any http proxy emulator: Adding 
boot property: 'qemu.timezone' = 'America/Los_Angeles' emulator: 
android_hw_fingerprint_init: fingerprint qemud listen service initialized 
emulator: INFO: GrpcServices.cpp:288: Started GRPC server at 
127.0.0.1:8554, security: Local emulator: emulator_window_fb_rotate 
emulator: OpenGL Vendor=[Google (Apple)] emulator: OpenGL Renderer=[Android 
Emulator OpenGL ES Translator (Apple M1)] emulator: OpenGL Version=[OpenGL 
ES 3.0 (4.1 Metal - 71.6.2)]

Any insight into why I'm not getting the emulator to boot the image?

-- 
-- 
You received this message because you are subscribed to the "Android Building" 
mailing list.
To post to this group, send email to android-building@googlegroups.com
To unsubscribe from this group, send email to
android-building+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-building?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"Android Building" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to android-building+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/android-building/9713650f-ee00-4c78-987b-d65444581668n%40googlegroups.com.

Reply via email to