oreo - android pie
No se puede iniciar el emulador en Android Studio 2.0 (14)
Acabo de actualizar mi estudio de Android de 1.5 a 2.0. Y ahora me enfrento a un error extraño cuando intento iniciar Emulator. Yo uso Ubuntu 15.10 OS
El monitor de Android devuelve este mensaje
sh: 1: glxinfo: not found
sh: 1: glxinfo: not found
libGL error: unable to load driver: r600_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: r600
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 155 (GLX)
Minor opcode of failed request: 24 (X_GLXCreateNewContext)
Value in failed request: 0x0
Serial number of failed request: 33
Current serial number in output stream: 34
QObject::~QObject: Timers cannot be stopped from another thread
Cuando estaba usando la versión 1.5, todo iba bien. ¿Es un error en Android Studio 2.0?
¿Cómo eliminar este error?
Después de hacer los dos pasos anteriores (publicado por Giorgio Ghiatis), instale mesa-utils si no está instalado.
$ sudo apt-get install mesa-utils
El mismo problema para mí en Ubuntu 16.04 LTS x64 con:
- Android Studio 2.2.3
- Herramientas de Android SDK 25.2.4
- Emulador versión 25.2.4-3534729 (desde Emulador> Controles extendidos> Ayuda> Acerca de)
Mi tarjeta gráfica es una AMD / ATI Radeon y leí de este hilo en Android Open Source Project - Issue Tracker que:
Es probable que la causa raíz del problema sea que la biblioteca de controladores Radeon GL requiere una libstdc ++ más reciente que la que se incluye con el emulador.
Así es como solucioné el problema:
-
Instalar lib64stdc ++ 6
$ sudo apt-get install lib64stdc++6:i386
-
Instalar mesas-demos
$ sudo apt-get install mesa-utils
-
Mueva libstdc ++. So.6 fuera del camino renombrándolo a libstdc ++. So.6.bak
$ cd ~/$ANDROID_HOME/Android/Sdk/tools/lib64/libstdc++ $ mv libstdc++.so.6 libstdc++.so.6.bak
En una situación extraordinaria, sus recursos de KVM podrían estar ocupados debido a otra máquina virtual VirtualBox en ejecución.
(He experimentado este problema).
Para superar este problema, utilicé Genymotion en lugar de Android Emulator.
Entonces podría ejecutar Genymotion junto con otras máquinas virtuales de VirtualBox.
Otra solución para mí fue usar bibliotecas de sistemas:
emulator -use-system-libs -avd YOUR_VIRTUAL_DEVICE_NAME
Tuve el mismo problema en una caja de Arch Linux. Tuve que hacer dos cosas para resolver todos los problemas:
-
Instalar
mesa-demos
. Este es el paquete Arch Linux que contieneglxinfo
:$ sudo pacman -S mesa-demos
-
Ejecute el emulador con el indicador
-use-system-libs
:$ emulator -avd <AVD name> -use-system-libs
Para habilitar este comportamiento en Android Studio, configuré la variable de entorno
ANDROID_EMULATOR_USE_SYSTEM_LIBS
en~/.zshrc
.export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
También puede configurar esto en
~/.profile
o~/.bashrc
. En todos estos casos, deberá iniciar Android Studio desde la línea de comandos. Alternativamente, puede configurarlo en~/.pam_environment
para poder iniciar Android Studio desde un~/.pam_environment
de escritorio:ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
Tuve el mismo problema y la solución no funcionó para mí.
La solución que funcionó para mí fue decirle a Android Studio que use las bibliotecas del sistema en lugar de las integradas editando $ HOME / .profile y agregando la siguiente línea:
export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
, y luego vuelva a iniciar sesión.
Verifique que haya instalado en su sistema lib64stdc ++ 6
Con un sistema operativo de 32 bits:
# apt-get install lib64stdc++6
Con un sistema operativo de 64 bits con multiarch habilitado:
# apt-get install lib64stdc++6:i386
Luego, vincule las nuevas bibliotecas instaladas a la ruta de herramientas de Android SDK
$ cd $ANDROID_HOME/android-sdk-linux_x86/tools/lib64/libstdc++
$ mv libstdc++.so.6 libstdc++.so.6.bak
$ ln -s /usr/lib64/libstdc++.so.6 $ANDROID_HOME/android-sdk-linux_x86/tools/lib64/libstdc++
EDITAR: en
15.10 x64
con Sdk actual (23), la carpeta es
$ANDROID_HOME/Sdk
después de la actualización para construir las herramientas 25.3.1, el archivo
libstdc++.so.6
se movió a
$ANDROID_HOME/Sdk/emulator/lib64/libstdc++/libstdc++.so.6
Corrección en Ubuntu 16 LTS
1.Instale lib64stdc ++ 6
sudo apt-get install lib64stdc++6:i386
2.Instale mesas-demos
sudo apt-get install mesa-utils
$ cd Android/Sdk/emulator/lib64/libstdc++
$ mv libstdc++.so.6 libstdc++.so.6.bak
$ ln -s /usr/lib64/libstdc++.so.6
me ha funcionado
cd ~/Android/Sdk/emulator/lib64/libstdc++
mv libstdc++.so.6 libstdc++.so.6.bak
ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6
¡Intentalo!
sudo apt-get install mesa-utils