android-sdks/build-tools/17.0.0/aapt:加载共享库时出错:libz.so.1:无法打开共享对象文件:没有这样的文件或目录
Posted
技术标签:
【中文标题】android-sdks/build-tools/17.0.0/aapt:加载共享库时出错:libz.so.1:无法打开共享对象文件:没有这样的文件或目录【英文标题】:android-sdks/build-tools/17.0.0/aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory 【发布时间】:2013-06-05 21:32:08 【问题描述】:我刚刚在全新安装的 64 位 fedora 14 上安装了 eclipse、android sdk 和 jdk,但是当我创建一个新项目时,我在控制台中收到以下错误:
android-sdks/build-tools/17.0.0/aapt:加载共享时出错 库:libz.so.1:无法打开共享对象文件:没有这样的文件或 目录
我使用的是 64 位机器,我需要安装一些 32 位驱动程序, 所以我正在尝试安装:
sudo apt-get install ia32-libs Reading Package Lists... 完成构建 依赖关系树...完成 E:找不到包 ia32-libs
谁能帮我解决64位fedora 14机器libz.so.1问题
【问题讨论】:
【参考方案1】:运行 Kubuntu 13.10 (x64),我使用了 lib32z1,它为我修复了它。
sudo apt-get install lib32z1
【讨论】:
它也对我有用。我在 Ubuntu 13.10 (x64) 上。谢谢。 摇滚吧。您是 32 位艺术的英雄和学者。 也适用于 XUbuntu 14.10! 它在 Ubuntu 14.04 (x64) 上对我不起作用。我设法修复它安装另一个包:sudo apt-get install libstdc++6:i386
@rchavarria 我两个都需要!我想如果你像我一样在lib32z1
之前安装libstdc++6:i386
,那么它对你有用!干杯【参考方案2】:
Lukacsa,它有效!简单而伟大的建议
试试这个:
sudo yum install zlib.i686 libstdc++.i686
这将解决64位机器的32位兼容性问题~!
(测试:CentOS 6.2 64 位和 Fedora 22 64 位)
【讨论】:
我还需要这样做:yum install libstdc++.i686 适用于 Fedora 24 与dnf
。【参考方案3】:
试试这个为我解决的问题,有 64 位 ubuntu 14.05
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
【讨论】:
【参考方案4】:我使用这篇博文中分享的解决方案解决了这个问题:
http://ideid.blogspot.co.uk/2013/01/resolve-shared-library-problem-with.html
为方便起见,这里是解决方案:
“Android SDK 是为 32 位 GNU/Linux 系统编译的,而您的系统是 64 位系统。要解决此错误,请安装所有最常用库的 32 位版本,通过安装ia32-libs 包
转到终端并键入以下命令。
sudo apt-get install ia32-libs
这将解决问题。”
希望对你有帮助
【讨论】:
sudo apt-get install ia32-libs
不再起作用。有什么新修复吗?【参考方案5】:
我在我的 centos 机器上遇到了类似的问题。
看看这个: https://ask.fedoraproject.org/en/question/9556/how-do-i-install-32bit-libraries-on-a-64-bit-fedora/
对我来说,它的工作原理是: yum install libstdc++.i386 zlib.i386
【讨论】:
【参考方案6】:yum install glibc.i686 glibc-devel.i686 libstdc++.i686 zlib-devel.i686 ncurses-devel.i686 libX11-devel.i686 libXrender.i686 libXrandr.i686
对于 RHEL,这很有效。我的机器是64位机器,
【讨论】:
【参考方案7】:我在 Archlinux 上遇到了同样的问题。
你需要在/etc/pacman.conf
启用multilib仓库:
[multilib]
Include = /etc/pacman.d/mirrorlist
更新 pacman 并安装 32 位版本的 zlib:
pacman -Suy
pacman -S lib32-zlib
【讨论】:
【参考方案8】:对于 OpenSuse,您只需安装 libz1-32bit
zypper install libz1-32bit
【讨论】:
【参考方案9】:在包名中添加 :i386 后缀,以便包管理器正确识别:
sudo apt-get install zlib1g:i386
【讨论】:
【参考方案10】:aapt 是一个 32 位应用程序,因此您的 64 位机器需要加载这些库
sudo dpkg --add-architecture i386
sudo apt-get -qqy update
sudo apt-get -qqy install libncurses5:i386 libstdc++6:i386 zlib1g:i386
【讨论】:
【参考方案11】:sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1
【讨论】:
欢迎来到 Stack Overflow。当用其他 11 个答案回答一个 6 年前的问题时,重要的是要解释你的答案涉及的问题的新方面,它与现有答案的不同之处,以及为什么你包含 apt-get 命令的每个部分. 虽然这可能会回答问题,但它已被标记为待审核。没有解释的答案通常被认为是低质量的。请在答案中提供一些评论,说明为什么这是正确答案。【参考方案12】:试试这个:sudo yum install zlib.i686
【讨论】:
以上是关于android-sdks/build-tools/17.0.0/aapt:加载共享库时出错:libz.so.1:无法打开共享对象文件:没有这样的文件或目录的主要内容,如果未能解决你的问题,请参考以下文章