点击下载:mk
用法如下
archermind@flm:~$ ./mk abc
archermind@flm:~$ cd abc
archermind@flm:~/abc$ tree >tree.log
archermind@flm:~/abc$ cat tree.log
.
├── jni
│ ├── Android.mk
│ ├── Application.mk
│ ├── include
│ └── m
└── tree.log
2 directories, 4 files
archermind@flm:~/abc$
这样,我们就可以将我们的源文件拷贝到jni目录下,头文件丢到include目录下,进行编译了
当然,这个Android.mk和m可根据你自己的情况进行修改
我的脚本运行的结果如下
archermind@flm:~/abc/jni$ cat Android.mk
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
NDK_APP_DST_DIR := $(LOCAL_PATH)
include /home/archermind/OpenCV-android-sdk/sdk/native/jni/OpenCV.mk
LOCAL_C_INCLUDES += include
LOCAL_SRC_FILES := abc.cpp
LOCAL_CFLAGS := -D__cpusplus -Wall -O3 -g -mfloat-abi=softfp -mfpu=neon -march=armv7-a -mtune=cortex-a53
#LOCAL_LDFLAGS += -L$(LOCAL_PATH)
#LOCAL_LDLIBS := -lopencv_java3
TARGET_ARCH_ABI :=armeabi-v7a
LOCAL_ARM_MODE := arm
LOCAL_ARM_NEON := true
LOCAL_MODULE := t
include $(BUILD_EXECUTABLE)
archermind@flm:~/abc/jni$
archermind@flm:~/abc/jni$
archermind@flm:~/abc/jni$ cat Application.mk
APP_STL := gnustl_static
APP_CPPFLAGS := -fexceptions -std=c++11
APP_ABI := armeabi-v7a
#APP_ABI := arm64-v8a
APP_PLATFORM := android-19
archermind@flm:~/abc/jni$
archermind@flm:~/abc/jni$
archermind@flm:~/abc/jni$
archermind@flm:~/abc/jni$ cat m
/opt/android-ndk-r14b/ndk-build
cp t /mnt/hgfs/share/
rm -fr ../obj
rm t
archermind@flm:~/abc/jni$