it-swarm.com.ru

Ubuntu - Ошибка: не удалось создать SD-карту

Я вижу много сообщений о записи на SD-карту, но я считаю, что моя проблема в другом. Я не могу создать SD-карту в процессе создания AVD.

Сначала я попытался использовать Android SDK и AVD Manager, выбрав
Имя : my_avd
Цель : Android 2.2 - API Level 8
SD-карта : Размер: 1024 МиБ
Скин : Встроенный: По умолчанию (HVGA)
Оборудование : Свойство: Абстрактная LCD Плотность, Значение: 160

Появляется окно с сообщением:
"Результат создания AVD" my_avd ":
Ошибка: не удалось создать SD-карту. "

Я попытался повторить процесс из командной строки, получив похожую ошибку:

[email protected]:~$ Android create avd -n my_avd -t 1 -c 1024M
Android 2.2 is a basic Android platform.
Do you wish to create a custom hardware profile [no]no
Error: Failed to create the SD card.

Попытка следовать инструкциям по использованию mksdcard была одинаково непродуктивной; Я думаю, что мой основной недостаток опыта Linux может вызвать у меня проблему здесь. Когда я пытаюсь использовать mksdcard, он просто сообщает, что не может найти файл или каталог. Доступен ли инструмент mksdcard для использования в Linux?

[email protected]:~$ mksdcard 1024M ./sdcard.iso
bash: /home/alex/Android-sdk-linux_x86/tools/mksdcard: No such file or directory
[email protected]:~$ Sudo Android create avd -n my_avd -t 1 -c 1024M

Я добавил каталог инструментов Android в переменную PATH, но я чувствую, что, очевидно, что-то еще мне не хватает. Возможно, какие-то права доступа?

Попытка запустить команду Android с помощью Sudo тоже не помогла:

[email protected]:~/Android-sdk-linux_x86/tools$ Sudo ./Android create avd -n my_avd -t 1 -c 1024M
Android 2.2 is a basic Android platform.
Do you wish to create a custom hardware profile [no]no
Error: Failed to create the SD card.

Я даже пытался установить Eclipse и плагин ADT и запустить менеджер оттуда безрезультатно. Любые советы будут наиболее ценными. Предварительное предупреждение о том, что я начинающий пользователь Linux, поэтому, даже если это кажется очевидной вещью, которую можно проверить, я все равно мог бы ее пропустить.

Спасибо!

83
Alex Pritchard

Итак, я нашел проблему. Я использовал 64-разрядную версию Linux, в которой по умолчанию не был установлен пакет ia32-libs. Утилита mksdcard не будет работать без этого пакета. После его установки я смог без проблем собрать AVD с помощью диспетчера AVD.

101
Alex Pritchard

На Ubuntu 16.04 LTS x64, используя Android Studio 2.1 (также протестирован на 2.3.3), запустите с терминала: 

Sudo apt-get install lib32stdc++6
81
GeekLei

У меня была такая же ошибка, как у вас, и я только что решил ее, так что, возможно, она может помочь вам (хотя я не думаю, что ваша ошибка вызвана той же проблемой, что и я). 

Я обнаружил, что все инструменты в ../tools не имеют разрешения на извинение, поэтому я использовал 

chmod -R 777 ../tools

из командной строки, и это, наконец, работает 

22
cynicholas

Как уже писали другие, проблема в том, что ваш дистрибутив Linux является 64-bit и в настоящее время Виртуальному устройству Android (AVD) требуется x86 библиотека для правильной работы.

Кто-то предложил установить ia32-libs. Однако в Ubuntu 14.04 LTS вы не найдете эту библиотеку . Я решил использовать эти альтернативные библиотеки: lib32z1, lib32ncurses5, lib32bz2-1.0 и lib32stdc ++.

Sudo apt-get update
Sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++
10
Paolo Rovelli

Я только что столкнулся с той же проблемой. Ни один из инструментов SDK не будет работать на 64-битной Ubuntu без установки ia32-libs (ПРИМЕР: Sudo apt-get install ia32-libs).

6
paulsm4

В элементарных ОС и Ubuntu решениями было установить следующие пакеты 

Sudo apt-get install lib32ncurses5 lib32z1
Sudo apt-get install libgcc1:i386
5
Lugty

Если вы используете Kali, Debian Jessie (или Ubuntu 13.10+), попробуйте

Sudo apt-get установить lib32stdc ++ 6

вместо ia32-libs, упомянутых выше.

4
Larry_C
Sudo apt-get install lib32stdc++6

После этого вы можете получить следующие ошибки

Cannot launch AVD in emulator.
Output:
libGL error: unable to load driver: i965_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: i965
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  6 (X_GLXIsDirect)
  Serial number of failed request:  49
  Current serial number in output stream:  48
libGL error: unable to load driver: i965_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: i965
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  6 (X_GLXIsDirect)
  Serial number of failed request:  49
  Current serial number in output stream:  48
libGL error: unable to load driver: i965_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: i965
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
emulator: WARNING: VM heap size set below hardware specified minimum of 228MB
X Error of failed request:  BadValue (integer parameter out of range for operation)
emulator: WARNING: Setting VM heap size to 384MB
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  33
  Current serial number in output stream:  34
QObject::~QObject: Timers cannot be stopped from another thread

Используйте эти 3 команды для решения тех

mv ~/Android/Sdk/tools/lib64/libstdc++/libstdc++.so.6{,.bak}
mv ~/Android/Sdk/tools/lib64/libstdc++/libstdc++.so.6.0.18{,.bak}
ln -s /usr/lib/libstdc++.so  ~/Android/Sdk/tools/lib64/libstdc++/**
4
Kumar Ayush
[email protected]:~$ mksdcard 1024M ./sdcard.iso
bash: /home/alex/Android-sdk-linux_x86/tools/mksdcard: No such file or directory
[email protected]:~$ Sudo Android create avd -n my_avd -t 1 -c 1024M

Я нашел эту проблему, и я нашел способ Сначала:

cd /home/alex/Android-sdk-linux_x86/tools/

тогда напишите это:

Sudo chmod 755 mksdcard
mksdcard 1024M ./sdcard.iso
Sudo Android create avd -n my_avd -t 1 -c 1024M

он должен работать :)

4
imon_iut

Также была эта проблема, и после установки пакета i386 я смог создать SD-карту для моего эмулятора Android Мне пришлось сделать два шага 

Sudo apt-get update
Sudo apt-get install ia32-libs

После этого я смог создать эмулятор с подключенной SD-картой.

3
rubenj

У меня была другая проблема: инструменты платформы были на моем пути, но инструментов не было. Итак, все работало, за исключением того, что образ SDCard не был создан. Я не заметил этого, когда я создал avd в Eclipse, и виртуальное устройство было создано с очень маленькой SD-картой, из-за чего оно постоянно выдавало ошибку «недоступен носитель» при установке приложения.

2
Andrew Paul Simmons

При тестировании Debian, когда я пытался запустить ./tools/mksdcards, я получил ошибку:

error while loading shared libraries: libstdc++.so.6: 
cannot open shared object file: No such file or directory

Установка lib32stdc ++ 6 решает проблему, и было возможно создать avd.

2
David Carlos

Я использую Fedora 64 и у меня была такая же проблема. Информация на этой странице помогла мне.

http://iexcel.wordpress.com/2010/01/25/ia32-libs-for-Android-sdk-on-Fedora-12-x86_64/

2
Bency76

У меня была другая проблема с использованием 32-битной Ubuntu. Когда я попытался запустить mksdcard вручную, я получил сообщение об ошибке «файл не найден».

Проблема была в open-jre/jdk. Я установил Oracle Java, и проблема была исправлена. К сожалению, вы больше не можете устанавливать Oracle Java через apt/synaptic, и вам придется перепрыгивать через некоторые дополнительные функции:

https://github.com/flexiondotorg/oab-Java6

1
CosmicCat

MyOS - это Oracle Unbreakable Linux 6 - для решения этой проблемы мне пришлось установить пакет libstdc ++ - 4.4.6-3.el6.i686.

0
SerVel

У меня такая же проблема. После устранения неполадок я узнал, что это из-за того, что у меня 32-битная Windows, а моя mksdcard совместима только с 64-битной. Затем я просто скопировал 32-битную карту MKSD в папку инструментов и удалил старую. Это решило мою проблему.

0
Jomia