Mensaje de error del emulador de Android: "PÁNICO: Falta el programa del motor del emulador para CPUS 'x86'".
Estoy intentando ejecutar un emulador de Android mediante AVD Manager. Tengo una Macbook Pro Retina. Instalé el controlador Haxm directamente desde la página de Intel.
Ningún emulador funciona. Todos reciben el mismo mensaje de "error".
Ejecución de comando (este error se produjo cuando usé Homebrew para instalar Android-sdk y Android-platform-tools | cualquiera que tenga el mismo problema debe eliminarlo o buscar dónde está el conflicto)
export ANDROID_EMULATOR_DEBUG=1 test20
emulator:Found AVD name 'test20'
emulator:Found AVD target architecture: x86
emulator:Looking for emulator-x86 to emulate 'x86' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
emulator:Found target-specific emulator binary: /usr/local/bin/emulator-x86
emulator:Probing for: /usr/local/bin/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/lib/lib64OpenglRender.dylib
emulator:Could not find OpenGLES emulation host libraries!
emulator: ERROR: This AVD's configuration is missing a kernel file!!
emulator -avd test21
emulator:Found AVD name 'test21'
emulator:Found AVD target architecture: x86_64
emulator:Looking for emulator backend for x86_64 CPU
emulator:Probing program: ./emulator-x86_64
emulator:Probing path for: emulator-x86_64
emulator:Looking for emulator-x86 to emulate 'x86_64' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
PANIC: Missing emulator engine program for 'x86_64' CPUS.
Después de solucionar el problema con Homebrew:
Probé un poco y encontré esto:
emulator64-x86 -avd test20
Creating filesystem with parameters:
Size: 69206016
Block size: 4096
Blocks per group: 32768
Inodes per group: 4224
Inode size: 256
Journal blocks: 1024
Label:
Blocks: 16896
Block groups: 1
Reserved block group size: 7
Created filesystem with 11/4224 inodes and 1302/16896 blocks
emulator: ERROR: Could not load OpenGLES emulation library: dlopen(lib64OpenglRender.dylib, 1): image not found
emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.
HAX is working and emulator runs in fast virt mode
qemu: could not load PC BIOS 'bios.bin'
Para todos los que tienen el mismo problema, tal vez estos pasos ayuden:
Ejecute su emulador en modo de depuración:
export ANDROID_EMULATOR_DEBUG=1 emulatorName
Si hay una ruta que parece extraña, busque otras instalaciones como Homebrew y elimine el conflicto (desinstale una)
Cuando falta la biblioteca, necesita exportar la variable:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ANDROID_HOME/tools/lib
Y cuando aparece el error "qemu: no se pudo cargar el BIOS de la PC 'bios.bin'", una solución es ejecutar el emulador con la ruta completa:
/Applications/Android\ Studio.app/sdk/tools/emulator64-x86 -avd test20
In your case it is maybe a other path.
Si está utilizando macOS, agregue el SDK emulator
y tools
los directorios de Android a la ruta:
Paso 1: En mi caso era importante el orden, primero emulator
y después tools
.
export ANDROID_SDK=$HOME/Library/Android/sdk
export PATH=$ANDROID_SDK/emulator:$ANDROID_SDK/tools:$PATH
Paso 2: Vuelve a cargarlo .bash_profile
o .bashrc
dependiendo del sistema operativo
Paso 3: obtenga una lista de emuladores disponibles:
$emulator -list-avds
Paso 4: inicie el emulador desde la línea de comando y reemplácelo avd
con el nombre de su emulador$emulator @avd
No olvides agregar el @
símbolo.
Esto se probó con macOS High Sierra 10.13.4 y Android Studio 3.1.2.
Tuve este problema después de actualizar Android Studio a 3.2 e incluso actualizar algunos paquetes SDK.
La causa fue que la ruta al emulador había cambiado, así que no uses
...../Android/Sdk/tools/emulator
pero en lugar
..../Android/Sdk/emulator/emulator
La siguiente solución para iniciar emulator-x86 funcionó para mí:
cd $SDK/tools;
ln -s emulator64-x86 emulator-x86
O en Windows abra el símbolo del sistema (Administrador)
cd %ANDROID_SDK_ROOT%\tools
mklink emulator64-x86.exe emulator-x86.exe
Y ahora el emulador se iniciará desde el administrador del SDK.
Nota IMPORTANTE :
Los emuladores se encuentran en
emulators
la carpeta en versiones más recientes. (graciasrmtheis
por la información)