Linux可执行文件No such file or directory
2022/2/24 7:25:58
本文主要是介绍Linux可执行文件No such file or directory,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
最近在使用Linux操作系统执行一个可执行文件,结果出现了No such file or directory的提示,表示很疑惑。
./tshrf
bash: ./tshref: No such file or directory
- 1
- 2
- 3
查看文件信息,可以看到文件是存在的,并且是可以执行的。
-rwxr-xr-x 1 yuan yuan 20581 4月 29 2004 tshref 1
查阅资料后,原因是系统位数与该可执行文件需要的lib库位数不匹配。
用uname命令打印系统信息,发现系统是64位系统
uname -a
Linux yuan-vm 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
- 1
- 2
- 3
用file命令查看文件信息,发现是一个32位可执行文件。
file ./tshref
./tshref: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
dynamically linked (uses shared libs), for GNU/Linux 2.2.5, not stripped
- 1
- 2
- 3
- 4
要想在64位系统上与运行32位程序,则需要安装32位lib库。
对于Ubuntu用户可以使用下面的命令安装。
sudo apt-get install ia32-libs
Reading package lists… Done
Building dependency tree
Reading state information… Done
Package ia32-libs is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
lib32z1 lib32ncurses5 lib32bz2-1.0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
过程中有可能找不到需要的库,但是会有几个替代包,选择安装其中一个。
sudo apt-get install lib32bz2-1.0
lib32bz2-1.0
- 1
- 2
- 3
然后就可以正常运行之前的可执行文件了。
遇到这种问题其实还有可能是其他原因,例如文本的编码格式问题等,本文仅提出了一种解决方法,读者遇到相同问题要具体问题具体分析。
这篇关于Linux可执行文件No such file or directory的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-12如何创建可引导的 ESXi USB 安装介质 (macOS, Linux, Windows)
- 2024-11-08linux的 vi编辑器中搜索关键字有哪些常用的命令和技巧?-icode9专业技术文章分享
- 2024-11-08在 Linux 的 vi 或 vim 编辑器中什么命令可以直接跳到文件的结尾?-icode9专业技术文章分享
- 2024-10-22原生鸿蒙操作系统HarmonyOS NEXT(HarmonyOS 5)正式发布
- 2024-10-18操作系统入门教程:新手必看的基本操作指南
- 2024-10-18初学者必看:操作系统入门全攻略
- 2024-10-17操作系统入门教程:轻松掌握操作系统基础知识
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南
- 2024-08-21【Linux】分区向左扩容的方法