Проблемы с Eclipse и Android SDK
Я установил Eclipse, openjdk6, скачал и распаковал файл sdk manager.
Теперь, когда я создал проект Android, я получил следующую ошибку:
2012-06-06 18:44:40 - contactManager] /home/catia/android-sdks/platform-tools/aapt:
error while loading shared libraries: libz.so.1: cannot open shared object file:
No such file or directory
И этот, когда я пытался создать AVD Manager:
[2012-06-06 19:00:18 - SDK Manager] /home/catia/android-sdks/tools/mksdcard: error
while loading shared libraries: libstdc++.so.6: cannot open shared object file: No
such file or directory
[2012-06-06 19:00:18 - SDK Manager] Failed to create the SD card.
[2012-06-06 19:00:18 - SDK Manager] Failed to create sdcard in the AVD folder.
8 ответов
Эта проблема возникает из-за того, что Android SDK скомпилирован для 32-битной системы GNU/Linux, а ваша система Ubuntu является 64-битной системой GNU/Linux. Решение должно быть простым (поскольку Ubuntu полностью поддерживает запуск 32-разрядных программ в 64-разрядной ОС)- достаточно установить 32-разрядные версии необходимых библиотек.
Самый простой и легкий способ сделать это - установить 32-битные версии всех наиболее часто используемых библиотек, установив ia32-libs. пакет. Вы можете сделать это в Центре программного обеспечения или в Терминале с помощью:
sudo apt-get update
sudo apt-get install ia32-libs
первоначально ia32-libs
был предоставлен, потому что Ubuntu в конфигурации по умолчанию не поддерживал установку 32-битных пакетов Ubuntu в 64-битной системе. Теперь, когда это полностью поддерживается по умолчанию, ia32-libs
Пакет просто устанавливает те же 32-битные пакеты, которые будут установлены в вашей 64-битной системе, которые будут установлены в минимальной 32-битной системе. (Так что для тех, кто обеспокоен, это может не сработать сейчас, когда multarch
поддерживается по умолчанию: все еще работает.)
Источник: Android / Eclipse Установка на Ubuntu 11.04 - aapt и adb не работают должным образом
Смотрите также: Eclipse Android Plugin - libncurses.so.5
Если вы используете Debian Jessie (или Ubuntu 13.10+), попробуйте
sudo apt-get install lib32stdc++6
Эта тема была для меня исправлением.
В частности, установка этого пакета:
sudo apt-get install lib32z1 lib32z1-dev
Я только что столкнулся с этим на 64-битной Ubuntu 14.04. Мое решение было:
sudo apt-get install -y libc6:i386 libgcc1:i386 libstdc++6:i386 libz1:i386
На основе общих библиотек, необходимых для инструмента aapt:
$ readelf -d android-sdk-linux/build-tools/20.0.0/aapt | grep -i shared
0x00000001 (NEEDED) Shared library: [librt.so.1]
0x00000001 (NEEDED) Shared library: [libdl.so.2]
0x00000001 (NEEDED) Shared library: [libpthread.so.0]
0x00000001 (NEEDED) Shared library: [libz.so.1]
0x00000001 (NEEDED) Shared library: [libstdc++.so.6]
0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x00000001 (NEEDED) Shared library: [libc.so.6]
Для Ubuntu >= 13.04 вместо ia32-libs
тебе нужно libgl1-mesa-dev:i386
sudo apt-get install libgl1-mesa-dev:i386
Ознакомьтесь с полным руководством по установке пакета Android SDK / ADT в Ubuntu
sudo apt-get install lib32z1
Это сработало для меня.
Зайдите в synaptic -> Поиск lib32z1 -> выберите время выполнения и разработку Применить и все готово.
Для Ubuntu 15.04 необходимо следующее:
sudo apt-get install lib32stdc++6 lib32z1