SDカードへの書き込みに関する記事はたくさんありますが、私の問題は違うと思います。 AVDの構築プロセス中にSDカードを作成できません。
最初にAndroid SDKとAVD Managerを使用してこれを行い、
名前:my_avd
ターゲット:Android 2.2-API Level 8
SDカード:サイズ:1024 MiB
スキン:ビルトイン:デフォルト(HVGA)
ハードウェア:プロパティ:抽象化LCD密度、値:160
次のメッセージを含むウィンドウがポップアップします。
"AVD 'my_avd'の作成結果:
エラー:SDカードの作成に失敗しました。」
同様のエラーを受け取って、コマンドラインからプロセスを繰り返してみました:
alex@alex-desktop:~$ 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を使おうとすると、ファイルまたはディレクトリが見つからないと報告されます。 Linuxでmksdcardツールをこの方法で使用できますか?
alex@alex-desktop:~$ mksdcard 1024M ./sdcard.iso
bash: /home/alex/Android-sdk-linux_x86/tools/mksdcard: No such file or directory
alex@alex-desktop:~$ Sudo Android create avd -n my_avd -t 1 -c 1024M
Android toolsディレクトリをPATH変数に追加しましたが、明らかに他に何か不足しているものがあるように感じます。
AndroidコマンドをSudoで実行しようとしても、次のいずれにも役に立たなかったようです。
alex@alex-desktop:~/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ユーザーであるという高度な警告がありますので、チェックするのが簡単な明らかなことのように思えても、それを見逃す可能性があります。
そこで問題を見つけました。 64ビットLinuxインストールを使用していましたが、デフォルトではia32-libsパッケージがインストールされていませんでした。このパッケージがないと、mksdcardユーティリティは実行されません。それをインストールした後、AVDマネージャーを使用して問題なくAVDを構築することができました。
Ubuntu 16.04 LTS x64では、Android Studio 2.1(2.3.3でもテスト済み)を使用して、ターミナルから実行します:
Sudo apt-get install lib32stdc++6
私はあなたと同じエラーがあり、それを解決したばかりなので、おそらくあなたに役立つかもしれません(あなたのエラーは私のような同じ問題によって引き起こされているとは思わないが)。
../toolsのすべてのツールには実行権限がないことがわかったため、使用しました
chmod -R 777 ../tools
コマンドラインから、最終的に動作します
他の人がすでに書いているように、問題はあなたのLinuxディストリビューションが64ビットであり、現在はAndroid Virtual Device([〜#〜] avd [〜#〜])正しく動作させるには、x86ライブラリが必要です。
誰かがインストールすることを提案していますia32-libs。ただし、buntu 14.04 LTSでは、このライブラリは見つかりません。これらの代替ライブラリを使用して解決しました:lib32z1、lib32ncurses5、lib32bz2-1.0およびlib32stdc ++.
Sudo apt-get update
Sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++
私はちょうど同じ問題に遭遇しました。 SDKツールのいずれも、ia32-libsをインストールせずに64ビットUbuntuで実行されます(例:Sudo apt-get install ia32-libs)。
エレメンタリーOSとubuntuでは、解決策は次のパッケージをインストールすることでした
Sudo apt-get install lib32ncurses5 lib32z1
Sudo apt-get install libgcc1:i386
Kali、Debian Jessie(またはUbuntu 13.10以降)を使用している場合は、試してください
Sudo apt-get install lib32stdc ++ 6
上記のia32-libsの代わりに。
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++/**
alex@alex-desktop:~$ mksdcard 1024M ./sdcard.iso
bash: /home/alex/Android-sdk-linux_x86/tools/mksdcard: No such file or directory
alex@alex-desktop:~$ 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
それは動作するはずです:)
また、この問題が発生し、i386パッケージをインストールした後、Androidエミュレータ用のSDカードを作成できました。2つのステップを実行する必要がありました
Sudo apt-get update
Sudo apt-get install ia32-libs
これが完了した後、SDカードを接続したエミュレーターを作成できました
別の問題がありました。プラットフォームツールは私のパスにありましたが、ツールはありませんでした。そのため、SDCardイメージが作成されなかったことを除いて、すべてが機能しました。 Eclipseでavdを作成し、仮想デバイスが非常に小さなsdカードで作成されたため、アプリのインストール時にメディアが利用できませんというエラーが常にスローされるようになると、この通知はありませんでした。
Debianテストで、。/ tools/mksdcardsを実行しようとすると、エラーが発生しました:
error while loading shared libraries: libstdc++.so.6:
cannot open shared object file: No such file or directory
Lib32stdc ++ 6をインストールすると問題が解決し、avdを作成できました。
私はFedora 64を実行していますが、同じ問題がありました。このページの情報は私を助けてくれました。
http://iexcel.wordpress.com/2010/01/25/ia32-libs-for-Android-sdk-on-Fedora-12-x86_64/
32ビットUbuntuを使用すると、別の問題が発生しました。手でmksdcardを実行しようとすると、ファイルが見つからないというエラーが表示されました。
問題はopen-jre/jdkでした。 Oracle Javaをインストールし、問題は修正されました。残念ながら、apt/synapticを介してOracle Javaをインストールできず、追加のフープをジャンプする必要があります。
MyOSはOracle Unbreakable Linux 6です。この問題を解決するには、libstdc ++-4.4.6-3.el6.i686パッケージをインストールする必要がありました。
多くのインストールを行っても結果が得られなかったので、これを見つけて動作しました。
これは、sdk/tools
は実行できません。 Android StudioおよびAndroid SDKフォルダーに移動し、次のコマンドですべてのディレクトリとファイルを実行可能にします。
chmod +x -R *
同じ問題がありました。トラブルシューティングの後、Windowsが32ビットであり、mksdcardが64ビットのみと互換性があるためだとわかりました。次に、32ビットのmksdcardをtoolsフォルダーにコピーし、古いフォルダーを削除しました。それは私の問題を解決しました。