64bitUbuntu执行32位程序报no such file or directory

来源:互联网 发布:java facet 是什么 编辑:程序博客网 时间:2024/05/22 08:20

在64位ubuntu下,执行32位程序,有时候可以执行成功,因为该32位程序不依赖任何库,

有时候会提示该程序:no such file or directory,这是因为它依赖一些32位的库,比如glibc,

而系统默认提供的是64位glibc,它没法使用,这样你就理解为何它会报这个错误了。

解决方法很简单,安装ia32-libs库即可,比如

apt-get install ia32-libs

到此,再执行下你的32位程序试试吧,你会发现可以运行了。

那么这个库为什么会那么神奇呢?原理是什么?

经过我的深入研究发现,它的原理其实是在/lib/i386-linux-gnu/下安装了32位的glibc,

32位应用程序引用的是这个路径下的库,而非/lib/x86_64-linux-gnu/下的64位库。

很狡猾是不,弄得我们的ubuntu体积增大了,不过看在它能解决你的问题,我们还是用着吧。

阅读全文
0 0