Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4519283
  • 博文数量: 356
  • 博客积分: 10458
  • 博客等级: 上将
  • 技术积分: 4734
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-24 14:59
文章分类

全部博文(356)

文章存档

2020年(17)

2019年(9)

2018年(26)

2017年(5)

2016年(11)

2015年(20)

2014年(2)

2013年(17)

2012年(15)

2011年(4)

2010年(7)

2009年(14)

2008年(209)

分类: Android平台

2015-03-23 17:09:56

平常开发的主要是helper2416开发板的程序,芯片是三星的2416,属于arm9,交叉编译器是公司自行移植的针对helper2416开发板的编译器,支持的是armv5te指令集
最近手上有一台android的小米盒子,就想着同是arm的平台,开发板指令集版本不高,能否用开发板的交叉编译器编译个helloworld的c语言程序在小米盒子上运行。
说说过程:
程序:

点击(此处)折叠或打开

  1. #include <stdio.h>
  2. #include <stdlib.h>

  3. int main()
  4. {
  5.     printf( "hello world!\n" );
  6.     return 0;
  7. }
开发板的arm交叉编译器编译,注意用静态链接,否则运行时会提示"sh: ./helloworld: No such file or directory"
arm-linux-gcc main.c -o helloworld -static
首先adb先连接上盒子(步骤略),再把程序传到小米盒子上,目录/sdcard/,其他目录可能传不上去
adb push ./helloworld /sdcard/helloworld
465 KB/s (584721 bytes in 1.227s)

进入小米盒子
adb shell
提升到root权限(请确保盒子已root)
$ su
进入/sdcard目录
$ cd /sdcard/ 
拷贝到/mnt/asec/目录下,不然会无法修改程序为可执行
root@android:/sdcard # cp helloworld /mnt/asec/                                
root@android:/sdcard # cd /mnt/asec/                                           
让程序有可执行权限
root@android:/mnt/asec # chmod 777 helloworld                                  
运行
root@android:/mnt/asec # ./helloworld                                          
输入
hello world!
成功了
作者:帅得不敢出门  程序员群:31843264

阅读(2940) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~