[FIX] todo qemu: name a GPU mode the emulator still accepts
Reported from a workstation: "Selected GPU option 'swiftshader_indirect' is not valid, switching to auto", then "Your GPU drivers may have a bug". That mode no longer exists in emulator 37.1; it fell back to swangle by itself, so it worked while printing two errors that read like a fault. emulator -help-gpu lists exactly four modes: auto, host, swiftshader, swangle. The AVD now asks for swangle. Checked on the VM: zero GPU errors where there were two, vulkan:swiftshader gles:swangle selected outright, boot in 55 s. --- FR --- Remonté depuis un poste : « Selected GPU option 'swiftshader_indirect' is not valid, switching to auto », puis « Your GPU drivers may have a bug ». Ce mode n'existe plus dans l'émulateur 37.1 ; il retombait de lui-même sur swangle, donc cela fonctionnait en affichant deux erreurs qui se lisent comme une panne. « emulator -help-gpu » énumère exactement quatre modes : auto, host, swiftshader, swangle. L'AVD demande désormais swangle. Vérifié sur la VM : zéro erreur GPU là où il y en avait deux, vulkan:swiftshader gles:swangle choisis d'emblée, boot en 55 s. Assisted-by: Claude Opus 5
This commit is contained in:
parent
ef57e1a097
commit
1dcd19b02f
2 changed files with 17 additions and 6 deletions
|
|
@ -5897,10 +5897,18 @@ class TODO:
|
|||
L'image système suit la plateforme du projet, et redescend si elle n'est
|
||||
pas publiée — Google ne fournit pas d'image pour toutes les API.
|
||||
|
||||
Le rendu est réglé sur swiftshader_indirect, DANS la configuration de
|
||||
l'AVD plutôt qu'en option de lancement : par « ssh -X » il n'y a pas de
|
||||
GLX direct, et l'émulateur s'ouvrirait sur un écran noir. Ainsi
|
||||
« emulator -avd erplibre » suffit, sans rien à retenir.
|
||||
Le rendu est réglé en logiciel DANS la configuration de l'AVD plutôt
|
||||
qu'en option de lancement : par « ssh -X » il n'y a pas de GLX direct, et
|
||||
l'émulateur s'ouvrirait sur un écran noir. Ainsi « emulator -avd
|
||||
erplibre » suffit, sans rien à retenir.
|
||||
|
||||
Le mode est « swangle » — ANGLE sur SwiftShader — et non
|
||||
« swiftshader_indirect », qui n'existe PLUS : l'émulateur 37.1 répond
|
||||
« Selected GPU option 'swiftshader_indirect' is not valid, switching to
|
||||
auto », puis « Your GPU drivers may have a bug », avant de retomber de
|
||||
lui-même sur swangle. Il fonctionnait, en affichant deux erreurs qui
|
||||
laissaient croire à une panne. Les modes valides sont exactement quatre,
|
||||
que « emulator -help-gpu » énumère : auto, host, swiftshader, swangle.
|
||||
"""
|
||||
return (
|
||||
f'echo " == {t("Android emulator (AVD)")} =="; '
|
||||
|
|
@ -5946,7 +5954,7 @@ class TODO:
|
|||
# 0,62 Mpixel — 4,2 fois moins. Android gère la densité et
|
||||
# l'application ne s'en aperçoit pas ; qui veut la taille
|
||||
# réelle l'écrase au lancement par « -skin 1080x2400 ».
|
||||
'printf "hw.gpu.enabled=yes\\nhw.gpu.mode=swiftshader_indirect\\nhw.lcd.width=540\\nhw.lcd.height=1140\\nhw.lcd.density=240\\n" '
|
||||
'printf "hw.gpu.enabled=yes\\nhw.gpu.mode=swangle\\nhw.lcd.width=540\\nhw.lcd.height=1140\\nhw.lcd.density=240\\n" '
|
||||
">> $HOME/.android/avd/erplibre.avd/config.ini' && "
|
||||
f'echo " ✅ {t("AVD ready:")} '
|
||||
"$(cat $HOME/.erplibre-avd-device) / "
|
||||
|
|
|
|||
|
|
@ -407,8 +407,11 @@ class TestAndroidEmulator(unittest.TestCase):
|
|||
"""Par « ssh -X » il n'y a pas de GLX direct : en « auto »,
|
||||
l'émulateur s'ouvre sur un écran noir. Le réglage va dans config.ini
|
||||
pour qu'« emulator -avd erplibre » suffise."""
|
||||
self.assertIn("hw.gpu.mode=swiftshader_indirect", self.cmd)
|
||||
self.assertIn("hw.gpu.mode=swangle", self.cmd)
|
||||
self.assertIn("config.ini", self.cmd)
|
||||
# « swiftshader_indirect » n'existe plus : l'émulateur 37.1 le refuse,
|
||||
# affiche deux erreurs et retombe sur swangle de lui-même. Mesuré.
|
||||
self.assertNotIn("swiftshader_indirect", self.cmd)
|
||||
|
||||
def test_xauth_is_installed(self):
|
||||
"""Sans xauth dans la VM, « ssh -X » n'ouvre aucun affichage — et le
|
||||
|
|
|
|||
Loading…
Reference in a new issue