我必须用gcc在ubuntu中编译的C程序。我想在android终端上运行这个可执行文件。当我运行时,它显示的是“文件或目录找不到”或“不可执行:ELF32 32”。我想在android终端上运行代码。gcc是否有任何方式或标志,或使用任何其他编译器,以便我可以在android终端上运行我的代码。
发布于 2017-01-20 12:38:58
Android不使用与Ubuntu相同的系统库,因此不会被找到。
有两种解决办法:
-static传给GCC。您将得到一个更大的二进制文件,它应该是完全独立的,没有依赖关系。它要求所有库的静态版本都可以在构建系统上使用。另外,一些特性(如DNS查找)总是期望共享库,因此它们不会以这种方式工作。即使如此,您也应该期望一些Linux特性不能工作。基本上,任何在/etc中需要硬件特性或配置文件的东西都需要付出很大的努力。有很多项目已经做到了这一点(搜索“”)。
我不知道“不能执行: tell 32”消息意味着什么,但是您应该检查您是在构建32位可执行文件还是构建64位可执行文件,以及Android二进制文件使用的是什么(file <whatever>应该告诉您)。
https://stackoverflow.com/questions/41760684
复制相似问题