android NDK如何解决Please define the NDK_PROJECT_PATH variable to point to it
来源:互联网 发布:数据分析与知识发现 编辑:程序博客网 时间:2024/06/14 07:29
从Google android官网下载最新的android ndk安装包android-ndk-r15b,自己配置环境使用ndk-build编译出现如下错误
$ ndk-build
Android NDK: Could not find application project directory !
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.
/home/用户路径/android-ndk-r15b/build/core/build-local.mk:151: *** Android NDK: Aborting . Stop.
原来最新的NDK使用命令行编译需要制定项目路径,Android.mk,Application.mk文件路径
ndk-build NDK_PROJECT_PATH=. NDK_APPLICATION_MK=Application.mk APP_BUILD_SCRIPT=Android.mk
注意:NDK_PROJECT_PATH=. 后面是一个英文句号“.”,表示当前路径
重新编译就可以了
$ ndk-build NDK_PROJECT_PATH=. NDK_APPLICATION_MK=Application.mk APP_BUILD_SCRIPT=Android.mk
Android NDK: APP_PLATFORM not set. Defaulting to minimum supported version android-14.
[armeabi] Compile++ thumb: HelloJni <= com_demo_Hello.cpp
[armeabi] StaticLibrary : libstdc++.a
[armeabi] SharedLibrary : libHelloJni.so
[armeabi] Install : libHelloJni.so => libs/armeabi/libHelloJni.so
[armeabi-v7a] Compile++ thumb: HelloJni <= com_demo_Hello.cpp
[armeabi-v7a] StaticLibrary : libstdc++.a
[armeabi-v7a] SharedLibrary : libHelloJni.so
[armeabi-v7a] Install : libHelloJni.so => libs/armeabi-v7a/libHelloJni.so
[x86] Compile++ : HelloJni <= com_demo_Hello.cpp
[x86] StaticLibrary : libstdc++.a
[x86] SharedLibrary : libHelloJni.so
[x86] Install : libHelloJni.so => libs/x86/libHelloJni.so
究其原因,谷歌的亲儿子android studio现在高度集成了NDK,所以在编译策略上有所改变,所幸改变不大。
Hello.java
package com.demo;public class Hello { public native static void native_HelloWorld();}
com_demo_Hello.h
/* DO NOT EDIT THIS FILE - it is machine generated */#include <jni.h>/* Header for class com_demo_Hello */#ifndef _Included_com_demo_Hello#define _Included_com_demo_Hello#ifdef __cplusplusextern "C" {#endif/* * Class: com_demo_Hello * Method: native_HelloWorld * Signature: ()V */JNIEXPORT void JNICALL Java_com_demo_Hello_native_1HelloWorld (JNIEnv *, jclass);#ifdef __cplusplus}#endif#endifcom_demo_Hello.cpp
#include "com_demo_Hello.h"#include <android/log.h>#define TAG "HelloJni"/* * Class: com_demo_Hello * Method: native_HelloWorld * Signature: ()V */JNIEXPORT void JNICALL Java_com_demo_Hello_native_1HelloWorld (JNIEnv * env, jclass clazz) { __android_log_print(ANDROID_LOG_VERBOSE, TAG, "Hello, World.");}
Android.mk
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := libHelloJniLOCAL_C_INCLUDES := com_demo_Hello.hLOCAL_SRC_FILES := com_demo_Hello.cppLOCAL_LDLIBS := -lloginclude $(BUILD_SHARED_LIBRARY)
Application.mk
APP_ABI := armeabi armeabi-v7a x86
NDK谷歌编译官网
https://developer.android.com/studio/projects/add-native-code.html#new-project
- android NDK如何解决Please define the NDK_PROJECT_PATH variable to point to it
- Please define the NDK_PROJECT_PATH variable to point to it
- Please define the NDK_PROJECT_PATH variable to point to it
- [ndk]Android NDK: Your APP_BUILD_SCRIPT points to an unknown file/Please define the NDK_PROJECT_PATH
- 解决Android NDK: Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !
- 解决Android NDK: Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !
- 解决Android NDK: Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !
- Android NDK: Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !
- Android NDK: Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !
- Android NDK: Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !
- 解决ndk编译Host 'awk' tool is outdated. Please define HOST_AWK to point to Gawk or Nawk !
- 解决The environment variable JAVA_HOME does not point to a valid JVM installation 问题
- android studio 安装启动出现 The environment variable Java_home does not point to JVm。。
- android studio 安装启动出现 The environment variable Java_home does not point to JVm。。
- android studio 中如何配置ndk project path 解决NDK_PROJECT_PATH=null 解决方法
- No JVM could be found on your system. Please define EXE4J_JAVA_HOME to point to an installed 32-bit
- No JVM could be found on your system.please define ESE4J_JAVA_HOME to point to an installed 32-bit o
- Environment variable ORACLE_SID not defined. Please define it.
- 青蛙跳台阶
- 网络的基本设定
- opencv3.2.0在vs2015,2017中的环境配置
- lua中关于取长度问题
- How to write a good design document for peer engineers (如何写一份给工程师看的技术文档)
- android NDK如何解决Please define the NDK_PROJECT_PATH variable to point to it
- 图解FTP的主动模式与被动模式以及客户端设置
- Android Things:外设I/O接口-GPIO
- 【C++】对象模型
- 三维迷宫
- Android 程序以及在4.4.4以上报错但是在4.4.4以上不报错
- 二叉堆
- [机器学习入门] 李宏毅机器学习笔记-29 (Sequence Labeling Problem part 1;结构化预测-序列标记 part 1)
- Flex布局