web-dev-qa-db-fra.com

SDK Android sur une machine Linux 64 bits

Est-il possible de développer en utilisant le SDK Android sur une machine Linux 64 bits. Les téléchargements de SDK disponibles semblent ne concerner que les versions 32 bits de Linux. 

97
dzhelil

Oui, ça l'est. Vous devez installer les bibliothèques ia32. Consultez la section Dépannage sous Linux Ubuntu .

apt-get install ia32-libs
apt-get install Sun-Java6-jdk
42
Matt Huggins

Sur (K) Ubuntu, vous avez besoin des packages 32 bits suivants:

Sudo apt-get install libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386

pour utiliser l'émulateur, vous avez besoin de ce paquet supplémentaire:

Sudo apt-get install libsdl1.2debian:i386
182
notz

Le SDK Android nécessite:

  • Fedora 17 64bit avec SDK Android:

    Sudo yum install glibc.i686 zlib.i686 libstdc++.i686 ncurses-libs.i686
    
  • Fedora 20 64bit avec SDK Android

    Sudo yum install glibc zlib libstdc++ ncurses-libs mesa-libGL-devel adb
    
34
MariuszS

Pour Debian Wheezy vous devez activer multiarch puis installer les bibliothèques dépendantes comme indiqué dans les autres réponses ou si nécessaire par les fichiers binaires du répertoire tools ou platform-tools:

Sudo dpkg --add-architecture i386
Sudo apt-get update
Sudo apt-get install libc6:i386

Pour les autres bibliothèques, vérifiez avec ldd les fichiers .so référencés.

 plateforme-outils $ ldd adb 
 linux-gate.so.1 => (0xf77bb000) 
 librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xf779b000) 
 libncurses.so.5 => non trouvé 
 libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf7781000) 
 libstdc ++. so.6 => non trouvé 
 libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf775b000) 
 libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf773e000) 
 libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf75db000) 
 libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf75d6000) 
 /lib/ld-linux.so.2 (0xf77bc000)

Continuez donc à installer libncurses5: i386 et libstdc ++ 6: i386 pour pouvoir exécuter

 plateforme-outils $ ./adb 
 Android Debug Bridge version 1.0.31 
...
15
sebastianwagner

Pour Ubuntu 13.1, ia32-libs n'est plus disponible. Donc, vous pouvez essayer celui-ci:

Sudo apt-get install lib32z1 lib32ncurses5 lib32stdc++6
9
user1079877

Sur CentOS 6.2, je l’ai obtenu avec les éléments suivants:

yum install glibc.i686 glibc-devel.i686 libstdc++.i686 zlib-devel.i686 ncurses-devel.i686 libX11-devel.i686 libXrender.i686 libXrandr.i686

5
khagler
4
tommed

Pour ceux qui utilisent Slackware cliquez ici.

Je l'ai essayé avec le courant et ça marche.

En bref, vous devez activer la prise en charge 32 bits en installant des packages multilib.

Pas:

1) Téléchargez le package:

> wget -np -nH -r -A txz,tgz \
> http://slackware.com/~alien/multilib/14.0/

2) installer des paquets:

~/multilib$ \
> cd \~alien/multilib/14.0/
~/multilib/~alien/multilib/14.0/$ \
> su -c "upgradepkg --reinstall --install-new *.t?z"

3) installer des packages de compatibilité:

~/multilib/~alien/multilib/14.0/$ \
> su -c "upgradepkg --reinstall --install-new *-compat32/*/*.t?z"

Redémarrez le système et le tour est joué.

4
Milan Krstic

Pour openSUSE, vous pouvez installer le package de modèle 32bit.

su zypper install-t pattern 32bit

1

Sur Ubuntu 13.10

Sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0

1
Venky

Vous pouvez construire sdk vous-même ... Je vais essayer. La version 32 bits est très lente.

0
imcaptor

Pour AWS Linux, j'ai trouvé la solution dans l'ancien post du forum AWS .

Sudo yum install mesa-libGL.i686 libXrender.i686 libSM.i686 freetype.i686 libstdc++.i686

0
Lee Han Kyeol

Un léger changement par rapport aux questions précédentes: J'utilise Debian Wheezy (7.0) sur un ordinateur portable System76 64 bits, j'avais déjà activé le multiarch et la plupart des outils natifs d'Android semblaient bien fonctionner ... jusqu'à ce que j'essaie de construire Une application. La génération a échoué car l’un des utilitaires de ressources avait besoin de libz.so.1 (32 bits).

apt-get install lib32z1

... réparé pour moi.

0
kramer

Pour les utilisateurs Arch:
Vous devez installer les packages lib32-gcc-libs et lib32-ncurses qui se trouvent dans le référentiel Multilib. (Ce que vous devez activer )

pacman -S lib32-gcc-libs  
pacman -S lib32-ncurses
0
Grrrben

Présomption: la version 32 bits du SDK Android est installée

Sur mon système d'exploitation Ubuntu 12 64 bits, je n'ai eu à installer aucun des packages mentionnés dans les commentaires précédents. Installez ce qui suit en utilisant Android SDK Manager
Sous Tools
Android SDK Tools 
Android SDK Platform-tools 
Latest Android SDK Build-tools

Sous la dernière API Android (dans mon cas, Android 4.3 (API 18)): 
SDK Platform
ARM EABI v7a System Image

Sous Extras:
Android Support Library

Attention, j'avais déjà essayé d'utiliser le package ia32-libs. Il s’est installé avec succès et j’ai pu exécuter mes applications Android. Cependant, si je redémarrais la machine, celle-ci ne démarrerait jamais. Par conséquent, je suggère de ne pas installer le paquet ia32-libs. Si cela a fonctionné pour vous alors super. Peut-être que c'était un problème limité à mon PC alors.

0
Arunraj Nair