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.
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
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
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
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 ...
Pour Ubuntu 13.1, ia32-libs n'est plus disponible. Donc, vous pouvez essayer celui-ci:
Sudo apt-get install lib32z1 lib32ncurses5 lib32stdc++6
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
Pour Ubuntu AMD64: http://blog.jayway.com/2009/10/21/getting-Android-sdk-working-on-ubuntu-64/
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é.
Pour openSUSE, vous pouvez installer le package de modèle 32bit.
su zypper install-t pattern 32bit
Sur Ubuntu 13.10
Sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
Vous pouvez construire sdk vous-même ... Je vais essayer. La version 32 bits est très lente.
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
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.
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
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.