Win7 NDK编译C
1 官网下载WINDOWS版本的NDK; https://developer.android.google.cn/ndk/downloads
2 解压NDK到指定目录,如D盘;
3 配置NDK环境变量:
在windows下配置环境变量:
新建环境变量 NDKROOT ,值为 D:\ProgramFiles\androidndk 。//值换成你的ndk根目录位置 注意这个变量名一定要是NDKROOT,至少在NDK r9版本的时候是这样
编辑Path环境变量,在它的尾巴上 添加 %NDKROOT%; 。
参考:https://www.cnblogs.com/tlm1992/p/android_ndk_setup.html
4 编写demo测试程序,android.mk,hello.c并将测试程序放在hello文件目录下面。
Android.mk:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := hello.c
LOCAL_MODULE := hello
include $(BUILD_EXECUTABLE)
hello.c
#include<stdio.h>
int main(int argc, char* argv[])
{
printf("hello world!\n");
return 0;
}
5 进入hello文件目录下面,执行ndk-build命令:
$ ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=./Android.mk
说明:NDK_PROJECT_PATH 指定了需要编译的代码的工程目录,这里给出的是当前目录,APP_BUILD_SCRIPT给出的是Android makefile文件的路径。
6 编译结束后
编译后,在目录里的lib目录里生成hello文件,用adb push到手机或模拟器。
将hello\libs\armeabi-v7a\hello文件push到手机上。
7 执行命令adb shell 连接手机
8 在/data/local/tmp 文件下面,执行./hello
9 warining 解决方法:参考https://blog.csdn.net/TMT123421/article/details/84798207
Android_elf_cleaner制作方法
(1)下载:https://github.com/kost/android-elf-cleaner
(2)直接在 linux 中执行 make 命令,即可编译得到 android-elf-cleaner 可执行程序;