admin 管理员组文章数量: 887017
2019-07-22
关键字:/system/bin/sh: xxx: No such file or directory
虽然说 Android 也是基于 Linux 的,但总归来说它们的编译链还是很有可能不一样的,这就导致编译出来的程序有可能不能通用,即使它们都是基于 Linux 的。
而有些不能通用的根本原因在于程序运行时所依赖的环境不满足,比如常见的就是一些库文件缺失了。
笔者这边有个需求,需要将一个第三方的,原本目标运行环境是 Linux 嵌入式环境的可执行程序在 Android4.4 的环境上运行起来。
刚一接到这个需求的时候我就一阵头大,一想到编译链不同我就两脚发软。
果然,刚一想运行这一程序,它就给报了一个这样的错误提示
/system/bin/sh: ./system/home1/ctstor/ctserver: No such file or directory
想都不带想的,肯定是编译链不同导致运行环境不满足使得程序不能运行的。
但问题还得解决啊,总不能直接就和领导说编译链不同搞不了吧。
怎么办呢?看看它到底缺了些什么。
用纯正 Linux 环境来看一下这个可执行程序的环境依赖信息。笔者这边是将程序放到 ubuntu 下去分析,因为笔者的 Android4.4 上没有相关程序。
通过以下命令查看这个可执行程序的编译依赖信息
readelf -l xxx
结果如下所示
Elf file type is EXEC (Executable file)
Entry point0xe6e0There are8 program headers, starting at offset 52Program Heade
本文标签: 程序 可执行 Linux 安卓跑 Android
版权声明:本文标题:安卓跑linux程序_Android下运行Linux可执行程序 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1726385864h950091.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论