联系qq 1923962282@qq.com
手机介绍一下代码编译hello world
下面介绍三种方式编译 linux , android系统mmm , ndk
jhf.c
#include"stdio.h"
int main()
{
printf("hello world");
}
linux 平台编译
gcc -o jhf jhf.c
./jhf
android平台编译
需要两个文件jhf.c android.mk
编写Android.mk
include $(CLEAR_VARS)
LOCAL_SRC_FILES := jhf.c
LOCAL_CFLAGS = -Ofast -ffunction-sections -fdata-sections
LOCAL_LDFLAGS := -llog -fopenmp -Wi
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := jhf
include $(BUILD_SHARED_LIBRARY)
将源码上面两个文件我们拷贝到external/jhf目录
source en....
lunch xxxdeng
mmm external/jhf
到系统的out/bin 目录下面拷贝出来jhf
adb root
adb remount
adb push jhf /system/bin
./jhf
ndk编译方式
下面 linux 下载ndk android-ndk-r17b解压放一个目录
.bashrc设置环境变量
export NDK_ROOT=/home/jhf/bigdisk/Android/android-ndk-r17b/
export PATH=$NDK_ROOT:$PATH
新建目录home下面 mkdir jhf
需要三个文件 jhf.c android.mk Application.mk
Application.mk 内容
APP_ABI := arm64-v8a ///64位
APP_PLATFORM := android-26
APP_STL := c++_static
在jhf目录下面打开终端运行编译命令
ndk-build NDK_PROJECT_PATH=. NDK_APPLICATION_MK=Application.mk APP_BUILD_SCRIPT=Android.mk
生成obj目录下面的jhf 拷贝到 system/bin运行