为什么我不能在Linux上执行Android x86可执行文件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了为什么我不能在Linux上执行Android x86可执行文件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1479字,纯文字阅读大概需要3分钟。
内容图文
我试图将Android应用程序移植到Linux(不要笑:)我遇到了一个问题.在使用./app_process添加可执行权限后尝试执行Android可执行文件(app_process)时,虽然cat ./app_process正常工作,但它表示它不存在.
同样在我的文件管理器(Pantheon Files)中,可执行文件显示共享库图标.
有没有办法在Linux上执行这些操作.
解决方法:
Android和Linux是两种不同的操作系统.您不能只从一个可执行文件并在另一个上运行它.
第一个障碍是内核. Android和Linux基于相同的内核,但它们有一些不同的功能.特别是,Android提供了binders,它仅存在于3.19版本的主流内核(Linux发行版中的内核)中.纯本机代码应用程序可能不使用绑定器,但大多数Java应用程序都可以.
第二个障碍是动态库.如果您有动态链接的可执行文件,则会调用动态链接器. Android和Linux具有不同的动态链接器,如果不存在动态链接器,则为you get the same error as if the executable itself was not present.
如果复制动态链接器及其所需的配置文件以及本机库,则应该能够运行大多数本机程序.您需要复制大部分/ system,并且副本需要位于/ system.
如果您想运行Java应用程序,那就更复杂了.您需要Java运行时环境(Dalvik / ART),并且大多数应用程序也需要一些Android守护程序(一些本机代码应用程序也需要这些恶魔).
结果是,虽然两个系统可以共存在一个内核上,但这需要是一个足够新的内核,或者一个Android内核(Android内核可以运行大多数Linux应用程序),并且需要安装两个操作系统 – 你不能只需从一个应用程序运行一个应用程序.
我不知道在Linux之上有任何现成的Android安装程序.然而,有另一种安装方式,特别是LinuxonAndroid.
如果目标是在Linux系统上运行Android应用程序,那么到目前为止最简单的方法是在模拟器中运行它,该模拟器是Android development tools的一部分.
内容总结
以上是互联网集市为您收集整理的为什么我不能在Linux上执行Android x86可执行文件全部内容,希望文章能够帮你解决为什么我不能在Linux上执行Android x86可执行文件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。