无法在Ubuntu中安装Android Studio

157

我正在使用Ubuntu Gnome 14.04,并已安装Java 8(包括JDK和JRE)。

在安装Android Studio时,一切都正常,但出现了以下消息:

无法运行mksdcard SDK工具

如何正确安装Android Studio,或如何解决此问题?


3
弗兰克林皮亚特,这是重复的内容,但我先发了 XD 不用担心。 - Carlos Carrizales
10个回答

270

假设您正在运行64位Ubuntu,则针对“问题 82711”建议的修复程序应该解决您的问题。

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6

更新: 针对Ubuntu 15.10和16.04 sudo apt-get install lib32z1 lib32ncurses5 lib32stdc++6


55
唯一必需的部分是最后一部分,即lib32stdc++6。 - warsong
10
@warsong,在Debian Jessie 64位系统上我遇到了同样的问题。安装lib32stdc++6也解决了我的问题。 - Franklin Piat
4
我做不到这个。 _有些软件包无法安装。这可能意味着你请求了一个不可能的情况,或者如果你正在使用不稳定的发行版,一些必需的软件包尚未创建或已经移出Incoming目录。 以下信息可能有助于解决问题:以下软件包存在无法满足的依赖关系: lib32stdc++6:依赖于lib32gcc1(>= 1:4.1.1),但无法安装。 E:无法纠正问题,您拥有已损坏的软件包。_ - Tomasz Mularczyk
4
sudo apt-get install lib32bz2-1.0 返回错误:E: 无法定位软件包 lib32bz2-1.0 E: 找不到任何与正则表达式 'lib32bz2-1.0' 匹配的软件包。 - Muhamed Huseinbašić
7
对于那些遇到 lib32bz2-1.0 错误的人,只需在不安装它的情况下运行以下命令: sudo apt-get install lib32z1 lib32ncurses5 lib32stdc++6 - Sanf0rd
显示剩余11条评论

81

@warsong是正确的。只安装lib32stdc++6解决了问题。

下次使用时,我会在回答区重写@warsong的评论。

sudo apt-get install lib32stdc++6

更新:

适用于Ubuntu 15.04、15.10、16.04 LTS和Debian 8。


2
我发现在尝试编译时出现以下错误后,我还需要lib32z1软件包:aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory - kostmo
你的Ubuntu版本是什么?我只在15.04 LTS中进行了测试。 - Sayem
我也在Ubuntu 15.04上进行了测试(顺便说一下,它不是LTS版本;14.04才是LTS版本)。 - kostmo
1
但是在Android Studio中运行Gradle需要完整的库文件 :(. "sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6" - qmn1711
2
问题的范围仅限于mksdcard失败,除非指定修复所有内容,因此这被视为正确答案。 - neferpitou
显示剩余5条评论

11

针对Fedora(已在Fedora 23/24上进行测试)运行

dnf install compat-libstdc++-296 compat-libstdc++-33 glibc libgcc nss-softokn-freebl libstdc++ ncurses-libs zlib-devel.i686 ncurses-devel.i686 ant

与此同时,developer.android.com 上包含了一个相关命令。尝试执行 dnf install zlib.i686 ncurses-libs.i686 bzip2-libs.i686。这应该就可以了。我还没有尝试过。 - Timo Bähr
developer.android.com上的步骤在Fedora 24上无法工作。我已经尝试了dnf install zlib.i686 ncurses-libs.i686 bzip2-libs.i686。这将安装bzip2-libs、glibc、ncurses-libs、nss-softokn-freebl、zlib。安装后仍然出现“mksdcard”错误。 - Timo Bähr

4
我知道这个问题是关于Ubuntu的,但我在Debian Jessie 64位上也遇到了类似的问题,warsongs的建议同样适用。
当我运行studio.sh启动Android Studio时,但在尝试配置Android SDK时,出现以下错误:
无法运行mksdcard SDK工具
当我尝试执行以下命令时:
sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6
出现如下错误:
E:软件包'lib32bz2-1.0'没有安装候选项
所以我采纳了warsongs的建议,只尝试安装lib32stdc++6。
sudo apt-get install lib32stdc++6
这样之后,我就可以将Android SDK添加到Android Studio中了。

确认,同样的问题,这代表了一个修复。我:Debian 64位,运行Stretch(测试版)。谢谢。 - iokevins

3
请查看此页面

如果你的开发机器是64位系统,则需要先安装额外的软件包。对于Ubuntu 13.10(Saucy Salamander)及以上版本,请使用apt-get安装libncurses5:i386、libstdc++6:i386和zlib1g:i386软件包:

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386

2

该问题是由于mksdcard未正确安装所致。

如果你正在运行64位系统,请执行以下操作来解决mksdcard问题。

    sudo dpkg --add-architecture amd64
    sudo apt-get update
    sudo apt-get install libncurses5:amd64 libstdc++6:amd64 zlib1g:amd64

32位:

    sudo dpkg --add-architecture i386
    sudo apt-get update
    sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386

在SDK 6.0中,错误信息不同但意思相同。
    Unable to run mksdcard

2

在Ubuntu 12.10上,这些选项都没有起作用(是的,我需要升级)。不过,我找到了一个简单的解决方案。从这里下载源代码:https://github.com/miracle2k/android-platform_sdk/blob/master/emulator/mksdcard/mksdcard.c。然后只需使用“gcc mksdcard.c -o mksdcard”进行编译。备份SDK工具子文件夹中的mksdcard,并用新编译的文件替换它。现在,Android Studio将对您的SDK感到满意。


0

在Linux Mint上运行

sudo apt-get install lib32z1 lib32ncurses5 libbz2-1.0 lib32stdc++6

0

当您的64位操作系统尝试安装Android SDK并尝试安装一些32位二进制文件时,就会出现此问题,因此是兼容性问题。

打开一个额外的终端并输入

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6 

这将有助于安装所有必需的二进制文件。之后,重新开始 Android SDK 安装过程。


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接