android手机编译可运行的linux程序
来源:互联网 发布:软件合同范本 编辑:程序博客网 时间:2024/05/14 08:44
测试平台:三星S4,内核3.4.5(华为p8上也测试通过,内核3.10.61)
Ubuntu版本:14.04
1. 搭建交叉编译环境
1.1 下载交叉编译工具:
arm-none-linux-gnueabi,下载地址:
http://www.codesourcery.com/sgpp/lite/arm/portal/package7851/public/arm-none-linux-gnueabi/arm-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
1.2 安装交叉编译工具:
将压缩包复制到/opt/toolchains/,运行解压命令tar -jxvf,解压得到arm-2010.09文件夹
1.3 配置环境变量
1) su nano ~/.bashrc
2) 在文件末尾添加如下的一行
export PATH=$PATH:/opt/toolchains/arm-2010.09-50/bin
3) 保存文件并退出
4) 运行命令 source ~/.bashrc
5) 当然可以用命令行验证一下是否成功 arm-none-linux-gnueabi-gcc -v。
注:配置好环境变量后,运行命令如果提示无法找到该文件,那么需要: apt-get install lib32z1,给系统装上32位软件的兼容库。
2. 编译C程序
新建hello.c
#include <stdio.h> int main() { printf("hello world android linux grograming\n"); return; }
编译:arm-none-linux-gnueabi-gcc -static -o hello hello.c
注:必须加上-static,否则运行时会提示./hello: No such file or directory。也就是在编译时将函数都静态编译到程序中了,运行时不用再动态连接,如果不加此选项,在android平台上就不让运行。
3. 运行
adb连接手机
1) adb push hello /sdcard/
2) adb shell
3)./hello
0 0
- android手机编译可运行的linux程序
- 利用winelib编译一个可在linux下运行的程序
- 用VS编译出可独立运行的程序
- 编译生成ARM上可运行的Qt程序
- 用VS编译出可独立运行的程序
- 用VS编译出可独立运行的程序
- 手机端C程序编译运行的简单分析
- Linux下的程序编译和运行
- linux-0.11 GCC4.3下可编译运行的源码
- 编译可在Android上运行的qemu user mode
- 编译可在Android上运行的qemu user mode
- 用VS编译出不依赖VC运行库的可独立运行的程序
- 用VS编译出不依赖VC运行库的可独立运行的程序
- 交叉编译Android系统Linux层应用软件程序并运行
- linux编译运行C程序
- Android ps 手机中正在运行的程序
- 解决小米手机不能运行Android Studio程序的问题
- 解决小米手机不能运行Android Studio程序的问题
- 超越华生!2016年这11大心理学新发现与你有关
- Android RenderScript 的使用基础篇
- ajax.load()方法
- 六、Zokeeper分布式集群部署
- Android自定义控件入门绘制基本图形
- android手机编译可运行的linux程序
- 汇编总结:mov指令
- 三星公布Note7燃损调查结果总结经验教训强化安全措施
- 高德地图使用选址组件时使用iframe.postMessage监听不到返回值
- java创建excel的两种方式
- 解决VMware NAT service服务无法启动或服务消失的问题
- struts2中数据共享给jsp页面的三种方式
- 两种方式实现java生成Excel
- [随笔]利用云虚拟机和学校VPN实现校外访问校内站点(反向代理)