用ndk-build 编译C语言文件,生成可在android系统上运行的文件

1、首先要在你的linux上装上ndk-build。到这个网站上下载http://dl.google.com/android/ndk/android-ndk64-r10-linux-x86.tar.bz2

2、解压文件 tar   -jxvf   xx.tar.bz2

3、设置环境变量,我的是unbuntu14 ,在/home/自己的用户名/.bashrc这个文件上添加一条 export   PATH="$PATH:/home/abc/android-ndk-r10” (android-ndk-r10文件夹就是上面下载的文件夹名),执行source /home/自己的用户名/.bashrc 就可以使用ndk-build了。接下来的事就是生成一个执行文件了。

4、首先编写一个简单的.c文件,比如下面代码,打印一个"Hello, Android!"

用ndk-build 编译C语言文件,生成可在android系统上运行的文件_第1张图片

5、接着编写一个Android.mk

用ndk-build 编译C语言文件,生成可在android系统上运行的文件_第2张图片

其中 假如不加 LOCAL_CFLAGS += -pie -FPIE 和LOACAL_LDFLAGS += -pie -fPIE 生成的可执行文件运行的时候,会报如下错误:

error: only position independent executables (PIE) are supported.

6、接着执行ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPPT=./Android.mk

7、这时候会生成另外几个文件夹,libs和obj,再libs/armeabi中找到HelloAndroid这个可执行文件

用ndk-build 编译C语言文件,生成可在android系统上运行的文件_第3张图片

 

 

8、接着将连上你的android手机,将HelloAndroid这个可执行文件上传到你的android手机上。再用chmod 777 HelloAndroid修改文件权限,最后./HelloAndroid执行。可以看到已经打印了Hello,Android!。

 

你可能感兴趣的:(android)