我们经常在执行二进制bin程序时,会遇到提示not found/no such file or directory/not executable等错误信息,在什么情况下会出现这种问题呢,我们一起罗列下几种常见的几种场景:

1.可执行bin程序确实不存在

这个错误就比较低级了,你的可执行bin没有打包或者拷贝进来,执行的时候,自然找不到了

linux下可执行bin程序提示not found/no such file or directory/not executable

2.可执行bin程序的路径不对

linux下可执行bin程序提示not found/no such file or directory/not executable

我们的bin不在$PATH包含的路径中,无法自动找到,则需要加上完整的路径执行

 

3.可执行程序bin为动态链接,且系统没有动态加载器

linux下可执行bin程序提示not found/no such file or directory/not executable

linux下可执行bin程序提示not found/no such file or directory/not executable

helloworld为动态链接,且系统没有/system/bin/linker

4.交叉编译器类型不相同

linux下可执行bin程序提示not found/no such file or directory/not executable

linux下可执行bin程序提示not found/no such file or directory/not executable

其中hello_world为x86编译的bin程序,无法在arm架构上运行

 

5.64位的bin程序运行在32位的系统

linux下可执行bin程序提示not found/no such file or directory/not executable

linux下可执行bin程序提示not found/no such file or directory/not executable

 

6.可执行程序bin为动态链接,缺少依赖的动态库

linux下可执行bin程序提示not found/no such file or directory/not executable

linux下可执行bin程序提示not found/no such file or directory/not executable

 

7.可执行程序bin存在,但是可执行bin为符合链接,源文件已经删除

linux下可执行bin程序提示not found/no such file or directory/not executable

 

8.可执行成bin存在,为动态链接,所依赖的动态库为符合链接,动态库链接的源文件已经删除

linux下可执行bin程序提示not found/no such file or directory/not executable

linux下可执行bin程序提示not found/no such file or directory/not executable