Skip to main content

android-emulator-trace

Run or debug lavatube's Android emulator capture workflow, especially tests/android_emulator_trace.sh, emulator setup, Android layer ABI selection, and verifying android traces.

Ir para a instalação

Informações da origem

Repositório
ARM-software/lavatube
Última atividade na origem
6 de julho de 2026 às 22:12
Idioma detectado do SKILL.md
inglês
Estrelas
9
Forks
5

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
android-emulator-trace
description
Run or debug lavatube's Android emulator capture workflow, especially tests/android_emulator_trace.sh, emulator setup, Android layer ABI selection, and verifying android traces.
metadata
{"short-description":"Run lavatube Android emulator traces correctly"}
# Android Emulator Trace Use this skill when working with `tests/android_emulator_trace.sh`, Android UI captures, Android debug Vulkan layers, or emulator trace failures. ## Core Rule Use desktop tools from `build/`, but push an Android-built Vulkan layer from `build_android_<ABI>/`. Do not push `build/libVkLayer_lavatube.so` to Android. It is a desktop Linux shared object and will fail in logcat with a missing `libstdc++.so.6` or another host-library dependency. ## Typical x86_64 Emulator Flow 1. Build desktop tools if needed: `make -C build -j6` 2. Build the Android emulator layer: `make -C build_android_x86_64 -j6` 3. Start the emulator: `tests/emulator_setup.sh` 4. Run the trace: `tests/android_emulator_trace.sh build_android_x86_64/libVkLayer_lavatube.so build/lava-replay VkLayer_lavatube.json` 5. Stop the emulator when done: `tests/emulator_cleanup.sh` ## Checks Before Running - `adb devices` should list one emulator. - `adb -e shell getprop ro.product.cpu.abi` should match the layer: - `x86_64` -> `build_android_x86_64/libVkLayer_lavatube.so` - `arm64-v8a` -> `build_android_arm64-v8a/libVkLayer_lavatube.so` - `file <layer>` should say `SYSV`, not `GNU/Linux`. ## Trace Verification After a successful script run, inspect the trace you captured from the repo root (here assuming that the trace is named `calendar.api`): ```bash build/packtool print metadata.json calendar.api | rg "VK_ANDROID_frame_boundary|VK_EXT_frame_boundary" build/lava-print calendar.api | rg "vkFrameBoundaryANDROID|vkCreateDevice" ``` ## Common Failures - `adb -e wait-for-device` hangs: no emulator is running. Run `tests/emulator_setup.sh` first. - `dlopen failed: library "libstdc++.so.6" not found`: a desktop `build/libVkLayer_lavatube.so` was pushed; rebuild/use `build_android_<ABI>/libVkLayer_lavatube.so`. - Trace path missing after launch: check logcat for `VkLayer_lavatube`, `vulkan`, `dlopen`, and `lavatube`.
Ver no GitHub