Android Native C development (1) -- Env Setup
2013-01-08 13:15
525 查看
http://blog.sina.com.cn/s/blog_4a0a39c30100auh9.html
Android原生(Native)C开发之一:环境搭建篇
Android是基于Linux的操作系统,处理器是ARM的,所以要在Linux或Windows等x86系统上编译Android能运行的程序,你需要一个交叉编译器。
在Linux下面,你可以自已编译一个交叉编译环境,但Windows下面,就比较复杂(也可以在cygwin中编译一个),但你可以选择下载一个现成的交叉编译环境:
http://www.codesourcery.com/gnu_toolchains/arm/download.html
Windows: http://www.codesourcery.com/gnu_toolchains/arm/portal/package3400/public/arm-none-linux-gnueabi/arm-2008q3-41-arm-none-linux-gnueabi.exe
Linux: http://www.codesourcery.com/gnu_toolchains/arm/portal/package3399/public/arm-none-linux-gnueabi/arm-2008q3-41-arm-none-linux-gnueabi.bin
安装好了之后,将 CodeSourcery编译器的bin目录 (我的是D:\Program Files\CodeSourcery\Sourcery G++ Lite\bin)加入你的PATH环境变量中,就可以开始你的Android Native C开发之旅了,写好一个简单的C程序:
#include <stdlib.h>
int main(int argc, char** argv) {
printf("hello android!\nI'm %s!\nI like android very much!!!\n", "Martin Foo");
return 0;
}
另存成hello.c,进入命令行模式,确保交叉编译器的bin目录,及Android SDK的tools目录在你的系统环境变量的path里面,用如下命令编译:
arm-none-linux-gnueabi-gcc -static hello.c -o hello
注意,一定要加上static参数,否则编译好的可能会在Android上不能运行。
启动Android模拟器,用如下命令将文件push到Android模拟器上:
adb shell mkdir /dev/sample
adb push hello /dev/sample/hello
adb shell chmod 777 /dev/sample/hello
先创建 /dev/sample目录,再将编译好的hello上传上去,最后将hello改成可执行的。
再进入命令行模式,进入Android的shell环境:
adb shell
#cd /dev/sample
#./hello
进入 /dev/sample目录,执行hello,运行结果如下图:
Android原生(Native)C开发之一:环境搭建篇
Android是基于Linux的操作系统,处理器是ARM的,所以要在Linux或Windows等x86系统上编译Android能运行的程序,你需要一个交叉编译器。
在Linux下面,你可以自已编译一个交叉编译环境,但Windows下面,就比较复杂(也可以在cygwin中编译一个),但你可以选择下载一个现成的交叉编译环境:
http://www.codesourcery.com/gnu_toolchains/arm/download.html
Windows: http://www.codesourcery.com/gnu_toolchains/arm/portal/package3400/public/arm-none-linux-gnueabi/arm-2008q3-41-arm-none-linux-gnueabi.exe
Linux: http://www.codesourcery.com/gnu_toolchains/arm/portal/package3399/public/arm-none-linux-gnueabi/arm-2008q3-41-arm-none-linux-gnueabi.bin
安装好了之后,将 CodeSourcery编译器的bin目录 (我的是D:\Program Files\CodeSourcery\Sourcery G++ Lite\bin)加入你的PATH环境变量中,就可以开始你的Android Native C开发之旅了,写好一个简单的C程序:
#include <stdlib.h>
int main(int argc, char** argv) {
printf("hello android!\nI'm %s!\nI like android very much!!!\n", "Martin Foo");
return 0;
}
另存成hello.c,进入命令行模式,确保交叉编译器的bin目录,及Android SDK的tools目录在你的系统环境变量的path里面,用如下命令编译:
arm-none-linux-gnueabi-gcc -static hello.c -o hello
注意,一定要加上static参数,否则编译好的可能会在Android上不能运行。
启动Android模拟器,用如下命令将文件push到Android模拟器上:
adb shell mkdir /dev/sample
adb push hello /dev/sample/hello
adb shell chmod 777 /dev/sample/hello
先创建 /dev/sample目录,再将编译好的hello上传上去,最后将hello改成可执行的。
再进入命令行模式,进入Android的shell环境:
adb shell
#cd /dev/sample
#./hello
进入 /dev/sample目录,执行hello,运行结果如下图:
相关文章推荐
- 编译android源码报错:build/envsetup.sh: 1: Syntax error: "(" unexpected
- Android编译系统详解(一)——build/envsetup.sh
- Android Native Development Kit (NDK)
- Android source build/envsetup.sh 及lunch 过程
- 【原】react-native start EACCESS error for setup_env.sh
- Android 编译系统(二):envsetup.sh学习
- Android Makefile 分析之 (build/envsetup.sh)
- Compile env setup for Android source
- Android Native Development Kit Cookbook 中 第二章 Manipulating strings in JNI代码错误问题
- Android build system 分析之 envsetup.sh
- Android 4.03 编译系统------envsetup.sh
- android编译分析之2—envsetup.sh
- 拒绝ndk-build (Android Native Development Kit)
- [转载]Android 编译环境 build/envsetup.sh分析
- Android高级篇-NDK(Native Development Kit)之坏境搭建【二】
- A brief guide for android native development
- Android高级篇-NDK(Native Development Kit)之坏境搭建【二】
- build/envsetup.sh简记Android
- 【Android】在build/envsetup.sh中添加自己的命令(函数)
- Android envsetup 环境设置