您的位置:首页 > 其它

ubuntu 12.04及12.10无法安装 ia32-libs

2015-02-05 21:16 218 查看
http://www.cnblogs.com/Ph-one/p/4275800.html

administrator@ubuntu:~$ sudo apt-get install ia32-libs

[sudo] password for administrator:

正在读取软件包列表... 完成

正在分析软件包的依赖关系树

正在读取状态信息... 完成

有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是

因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件

包尚未被创建或是它们已被从新到(Incoming)目录移出。

下列信息可能会对解决问题有所帮助:



下列软件包有未满足的依赖关系:

ia32-libs : 依赖: ia32-libs-multiarch 但无法安装它

E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。



这种情况在11.10以下(包括11.10)中都没有出现。

在搭建android 开发环境的时候 ,通常都会出现无法创建adv的情况,这种情况的原因是因为ubuntu是64位的,没有安装32的依赖库,而我们的解决方法,通常也是 sudo apt-get install ia32-libs,这个方法在11.10以下是可以的,但是12.04上面就会出现上面的情况无法安装,下面是我找到的方法:

1:apt-get install gnupg flex bison gperf zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z1-dev libgl1-mesa-dev g++-multilib

(经过验证发现方法一并没有用)



-------------------------------------------------------------------------------

arm-linux-gcc -v(问题)



2:http://blog.csdn.net/doon/article/details/8053174



网上也没有找到合适的方法。
最后还是用google(还是比baidu强啊),虽然没有找到该库的安装方法,但是找到了解决方法:即自己安装需要的32位库
☆①$ sudo apt-get install libc6:i386 libgcc1:i386 gcc-4.6-base:i386 libstdc++5:i386 libstdc++6:i386


我本意是运行adb的。运行adb时,发现缺乏libncurses5库,自己动手,丰衣足食,比葫芦画瓢,
☆②sudo apt-get install libncurses5:i386

在64位下,gcc默认编译代码位64位的,但是,如果你想编译位的,可以用gcc -m32选项,来设置。
不过,不幸的是,会出现错误,说找不到 /usr/include/features.h文件什么的。google一下,发现用这种方法:
☆③sudo apt-get install g++-multilib(就这一句有用的)

-------------------------------------------------------------------------------
这么纠结过后,终于能创建模拟器了,但是又有新的问题:
SDL init failure, reason is: No available video device
各方查找发现:
方法1:sudo apt-get install ia32-libs lib32stdc++6
结果出现:

正在读取软件包列表... 完成

正在分析软件包的依赖关系树

正在读取状态信息... 完成

lib32stdc++6 已经是最新的版本了。

lib32stdc++6 被设置为手动安装。

有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是

因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件

包尚未被创建或是它们已被从新到(Incoming)目录移出。

下列信息可能会对解决问题有所帮助:

下列软件包有未满足的依赖关系:

ia32-libs : 依赖: ia32-libs-multiarch 但无法安装它

E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。


问题有返回前面了




之后我又采取这个方法命令:
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 libz1:i386 libsdl1.2debian:i386
结果出现:
正在读取软件包列表... 完成

正在分析软件包的依赖关系树

正在读取状态信息... 完成

E: 无法定位软件包 libc6

E: 无法定位软件包 libncurses5

E: 无法定位软件包 libstdc++6

E: 无法按照正则表达式 libstdc++6 找到任何软件包

E: 无法定位软件包 libz1

E: 无法定位软件包 libsdl1.2debian

E: 无法按照正则表达式 libsdl1.2debian 找到任何软件包


估计是之前更新不上,下面又进行:
(成功的,只用这一句即可)sudo apt-get update



SDL(Simple DirectMedia Layer)是一个自由的跨平台的多媒体开发包,适用于 游戏、游戏SDK、演示软件、模拟器、MPEG播放器和其他应用软件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: