在64位的linux上运行32位的程序

1.症状

(1)执行bin文件时提示:No such file or directory

(2)ldd bin文件  的输出为: not a dynamic executable

(3)file bin文件 的输出显示程序是32位

2.解决

debian上只要安装 ia32-libs这个包(apt-get install ia32-libs)就可以了。

$ sudo apt-get install ia32-libs
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:


下列软件包有未满足的依赖关系:
 ia32-libs : 依赖: ia32-libs-i386 但无法安装它
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。

$ sudo dpkg --add-architecture i386

$ sudo apt-get update

$ sudo apt-get install ia32-libs

 

你可能感兴趣的:(linux)