64位Ubuntu运行32位程序及下载依赖库
2018-04-02 20:42
447 查看
嗯干活的时候就是会遇到一些奇奇怪怪的问题。
然而目录下明明有这个文件,这是因为64位系统中缺少32位程序运行时必要的库。在Ubuntu12.04之前可以通过安装库
此时就需要先安装共享库libjpeg.so.8,可以通过apt-file找到想要安装的共享库在哪个包里, 然后安装这个包。
首先安装apt-file:
然后用apt-file的search选项来查找共享库:
安装libjpeg-turbo8,注意对于32位的cjpeg程序,需要安装32位的libjpeg-turbo8:
其中i386指定了软件包为32位。安装完毕后再次运行cjpeg,可以看到cjpeg能够正常运行啦。
运行32位程序
在普通的64位Ubuntu机器上直接运行32位的ELF程序会出现这样的问题:yy@yy-DELL:~$ ./cjpeg 115.bmp bash: ./cjpeg: 没有那个文件或目录
然而目录下明明有这个文件,这是因为64位系统中缺少32位程序运行时必要的库。在Ubuntu12.04之前可以通过安装库
ia32-libs来解决此问题,在Ubuntu12.04之后的版本可以通过安装
lib32ncurses5和
lib32z1来解决。
sudo apt-get install lib32ncurses5 lib32z1
下载安装指定依赖库
许多elf程序的运行会依赖一些共享库,如果没有安装会有如下提示:yy@yy-DELL:~$ ./cjpeg 115.bmp ./cjpeg: error while loading shared libraries: libjpeg.so.8: cannot open shared object file: No such file or directory
此时就需要先安装共享库libjpeg.so.8,可以通过apt-file找到想要安装的共享库在哪个包里, 然后安装这个包。
首先安装apt-file:
sudo apt-get install apt-file apt-file update
然后用apt-file的search选项来查找共享库:
yy@yy-DELL:~$ apt-file search libjpeg.so.8 libjpeg-turbo8: /usr/lib/x86_64-linux-gnu/libjpeg.so.8 libjpeg-turbo8: /usr/lib/x86_64-linux-gnu/libjpeg.so.8.0.2
安装libjpeg-turbo8,注意对于32位的cjpeg程序,需要安装32位的libjpeg-turbo8:
sudo apt-get install libjpeg-turbo8:i386
其中i386指定了软件包为32位。安装完毕后再次运行cjpeg,可以看到cjpeg能够正常运行啦。
相关文章推荐
- 64位Ubuntu运行32位程序时报文件不存在(No such file or Directory)的一种解决办法
- 64位 ubuntu 14.04 运行32位程序
- 64位Ubuntu 16.04运行32位程序
- Ubuntu 64位运行32位程序要安装的库
- 如何在ubuntu14.04(64位)编译运行32位程序
- 64位ubuntu运行32位程序
- Ubuntu 13.04 64位运行32位程序出现问题
- Ubuntu 64位机器上运行32位程序
- ubuntu14.04(64位)运行32位程序
- ubuntu 12.04 LTS 64位兼容运行32位程序
- 解决Ubuntu64位执行32位程序的依赖包问题
- 64位Ubuntu 16.04运行32位程序
- 如何在ubuntu14.04(64位)编译运行32位程序
- 如何在ubuntu14.04(64位)编译运行32位程序
- Ubuntu64位执行32位程序的依赖包问题adb错误
- Ubuntu16.0.4LTS 64位上运行32位程序,提示No such file or directory?错误的解决办法
- 64位Linux(ubuntu)安装、运行32位程序
- Ubuntu16.0.4LTS 64位上运行32位程序,提示No such file or directory?错误的解决办法
- Ubuntu64位下运行32位的程序
- Ubuntu64位系统运行32位程序