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 [email protected]
To unsubscribe from this group, send email to
[email protected]
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 [email protected].
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