ERREUR: les binaires de l'émulateur Android Linux 32 bits sont obsolètes lors de la tentative d'exécution de l'émulateur Android

14

J'ai défini l'environnement de développement Android dans Ubuntu 10.10, 32 bits. Après avoir créé l'AVD lorsque j'ai lancé l'émulateur, j'ai reçu l'erreur suivante.

ERREUR: les binaires de l'émulateur Android Linux 32 bits sont obsolètes, pour les utiliser,
vous devrez effectuer au moins l'une des opérations suivantes:
- Utilisez l'option '-force-32bit' lorsque vous appelez 'émulateur'.
- Définissez ANDROID_EMULATOR_FORCE_32BIT sur 'true' dans votre environnement.
L'un ou l'autre vous permettra d'utiliser les binaires 32 bits, mais sachez qu'ils disparaîtront dans une future version du SDK Android.
Pensez à passer à un système Linux 64 bits avant que cela ne se produise.

La version ADT que j'utilise est 23.0.3.1327240. Les bibliothèques SDK que j'utilise sont 32 bits. veuillez m'aider. Merci.

Mohanraj Mani
la source
1
Mettre à niveau vers une nouvelle version passer à 64 bits.
Mateo
4
Vous devez mettre à niveau vers une version d'Ubuntu prise en charge. Normalement, nous fermons cela comme non pris en charge, mais comme ce problème n'est pas vraiment spécifique à une version plus ancienne et je pense que d'autres personnes pourraient rencontrer ce problème sur une version prise en charge, je le laisserai. Mais je vous suggère fortement de passer à au moins 12.04.
Seth
3
Je suis d'accord: il s'agit de la minorité de nouvelles questions sur un problème dans une version EoL où (a) nous savons que la réponse est indépendante de la version, et (b) à la fois la question et la réponse (car elles impliquent une activité commune avec un piège non évident) semblent avoir une valeur particulièrement élevée pour les autres. Cela pourrait être modifié pour le généraliser à toutes les versions, mais nous devons le garder ouvert. @MohanrajMani Mais veuillez ne pas continuer à utiliser 10.10. Il n'est pas pris en charge depuis longtemps, et cela signifie en partie qu'il n'est pas mis à jour pour corriger les failles de sécurité récemment découvertes. C'est risqué à utiliser.
Eliah Kagan du
1
Cela n'a rien à voir avec Ubuntu 10.10, mais est spécifiquement dû à la tentative d'utilisation de l'émulateur Android sur une distribution Linux 32 bits alors qu'il était conçu pour 64 bits. la même chose se produira sur Ubuntu 12.xx et 14.xx si vous utilisez la distribution intel 386. En outre, la dernière fois que j'ai vérifié, vous ne pouvez pas passer au 64 bits. 64 bits n'est pris en charge que sur AMD, 32 bits n'est pris en charge que sur Intel.
JSON
1
@JSON La version 64 bits d'Ubuntu s'exécute sur les processeurs AMD 64 bits et Intel 64 bits. Le "amd" dans "amd64" ne signifie pas qu'il s'agit uniquement d'AMD. De même, la version 32 bits s'exécute sur les processeurs AMD (32 et -64 bits) et Intel (32 et -64 bits) - le «i» dans «i386» ne signifie pas qu'il est uniquement Intel . Voir La version 64 bits d'Ubuntu est-elle uniquement compatible avec les processeurs AMD? et différence entre le téléchargement i386 et l'amd64? pour plus de détails. (Je suis d'accord que cette question n'est pas spécifique à la version 10.10 d'Ubuntu, cependant.)
Eliah Kagan

Réponses:

15

Vous obtenez cette erreur car vous utilisez apparemment un système 32 bits et l'émulateur Android est conçu pour fonctionner au mieux dans un environnement 64 bits. La seule vraie solution est d'installer un système d'exploitation 64 bits.

Si votre matériel ne prend pas en charge 64 bits ou que vous ne pouvez pas réinstaller pour le moment, vous pouvez contourner temporairement le problème en passant -force-32bitlorsque vous démarrez l'émulateur à partir de la ligne de commande ou en définissant ANDROID_EMULATOR_FORCE_32BITdans truedans votre environnement (comme l'indique l'erreur). Vous pouvez le faire en exécutant:

gedit .profile  

Depuis un terminal. Ajoutez le texte:

export ANDROID_EMULATOR_FORCE_32BIT=true  

à la fin du fichier et enregistrez-le et fermez-le. Je ne peux pas le tester pour le moment, mais vous devrez soit exécuter à source .profilepartir du terminal ou redémarrer pour que les modifications prennent effet.

Essayez de lancer l'émulateur.

Il est fortement recommandé d'installer un système d'exploitation 64 bits pour poursuivre votre développement Android, car Google supprimera éventuellement les fichiers binaires 32 bits, ce qui entraînera l'arrêt de votre émulateur. Android lui-même évolue également vers une architecture x64, donc en restant avec 32 bits, vous serez très vite laissé pour compte.

Seth
la source
4

j'ai une excellente solution. vous pouvez le démarrer avec eclipse ou netbeans. essayez:

  1. Dans Eclipse, cliquez sur votre dossier de projet Android, puis sélectionnez Exécuter> Exécuter les configurations ...

  2. Dans le panneau de gauche de la boîte de dialogue Exécuter les configurations, sélectionnez la configuration d'exécution de votre projet Android ou créez une nouvelle configuration.

  3. Cliquez sur l'onglet Cible.

Dans le champ Options supplémentaires de ligne de commande de l'émulateur, entrez:

-force-32bit

Exécutez votre projet Android à l'aide de cette configuration d'exécution.

dans netbeans vous: 1. où vous choisissez le débogueur a choisi Personnaliser ...

  1. dans les options de l'émulateur, écrivez -force-32bit
  2. cliquez sur OK. et exécuter l'application
Jakob
la source
1

Modifiez ce fichier:

terminal ouvert à ubuntu

gedit .bashrc

collez ce texte:

export ANDROID_EMULATOR_FORCE_32BIT=true

actualiser la source:

source ~/.bashrc
ange
la source
3
~/.bashrcn'a pas besoin d'être modifié en tant que root, il n'y a donc aucune raison de l'utiliser sudo. (En plus de cela, c'est une réponse raisonnable et utile, bien que je suggère de mettre cette variable d'environnement à la ~/.profileplace comme Seth le suggère ou peut-être même de mettre l'affectation - c'est-à-dire sans export- dans `~ / .pam_environment.)
Eliah Kagan
@EliahKagan À la lumière de ce Q / R, ce ~/.profilen'est peut - être pas le meilleur endroit après tout? Je suis quelque peu confus parce que le wiki a spécifiquement suggéré de placer des variables d'environnement dans ~/.profile..
Seth
1

créer un script shell:

#!/bin/bash
#
#   set export ANDROID_EMULATOR_FORCE_32BIT=true

export ANDROID_EMULATOR_FORCE_32BIT=true
/opt/adt-bundle-linux-x86-20140702/eclipse/eclipse

Changez le script shell en exécutable et exécutez-le pour lancer eclipse

/opt/adt-bundle-linux-x86-20140702/eclipse/eclipse est le chemin vers l'exécutable eclipse.

patrkw
la source
Cela a fonctionné lors de l'utilisation de Titanium, mais modifiez simplement leur fichier SH. Donc ça marche.
jfreak53
1

J'ai résolu ce problème en mettant à jour la configuration de l'émulateur dans Android studio comme suit.

  1. Allez dans le menu Exécuter -> Modifier la configuration .. dans Android Studio
  2. Sélectionnez le nom de l'application sous Application Android dans le volet gauche
  3. Sélectionnez l'onglet Émulateur dans le volet droit
  4. Cochez "Options de ligne de commande supplémentaires:" et entrez -force-32bit dans la zone de texte à côté
  5. Sélectionnez "OK" et essayez à nouveau d'exécuter l'application.
Yugender M
la source