我是NDK调试的新手,我正在尝试构建用于调试的cpp代码.

这是我的Application.mk文件的外观:

APP_STL := stlport_static

APP_MODULES := abc xyz

APP_CFLAGS += -fno-rtti -fexceptions

APP_ABI := armeabi armeabi-v7a

NDK_TOOLCHAIN := arm-linux-androideabi-4.9

我得到以下错误,我已经尝试了ndk工具中的所有工具链,我错过了什么?

更新:

我意识到当从Android Studio运行构建时,NDK_PROJECT_PATH设置为null.我能够跑

来自终端的ndk-build -C.

实际上我的最终目标是通过设置断点来调试本机c文件.

那么目前的情况:

我在xyz文件夹中有本机代码,其中包含包含android.mk和application.mk的jni文件夹

我可以在这个文件夹中运行ndk-build并获取.so文件,我手动复制粘贴在我的Android应用程序的jnilibs文件夹中(比如appB):

这是appB的平台:

apply plugin: 'com.android.library'

android {

compileSdkVersion 23

buildToolsVersion "23.0.2"

defaultConfig {

minSdkVersion 13

targetSdkVersion 13

versionCode 1

versionName "1.0"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

}

}

}

dependencies {

compile fileTree(include: ['*.jar'], dir: 'libs')

//compile 'junit:junit:4.12'

// compile 'com.android.support:appcompat-v7:24.1.1'

}

后来我使用这个应用程序作为依赖在另一个应用程序说appA.

这是appA的平台:

buildscript {

repositories {

mavenCentral()

}

dependencies {

classpath 'com.android.tools.build:gradle:2.2.0'

}

}

apply plugin: 'com.android.application'

android {

compileSdkVersion 24

buildToolsVersion "24.0.0"

defaultConfig {

applicationId "*****"

minSdkVersion 14

targetSdkVersion 24

versionCode 1

versionName "1.0"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

}

}

}

repositories{

mavenCentral()

}

dependencies {

compile fileTree(include: ['*.jar'], dir: 'libs')

testCompile 'junit:junit:4.12'

compile 'com.android.support:appcompat-v7:24.0.0'

compile 'com.android.support:design:24.0.0'

compile 'com.android.support:support-v4:24.0.0'

compile 'com.android.support:recyclerview-v7:24.0.0'

compile 'com.android.support:cardview-v7:24.0.0'

compile 'com.android.support:preference-v14:24.1.0'

compile project(':appB')

}

我需要能够调试,

appA(我可以)

appB(我可以)

本机代码包含在appB中的.so(我还不知道如何)

AAP

解决方法:

您可以将Android Studio更新为2.2.2,并使用菜单File->使用Gradle链接C项目.

官方ndk样品可以找到here!

标签:c-2,android,android-ndk

来源: https://codeday.me/bug/20190623/1267110.html

ANDROID_NDK的path,如何在Android Studio中设置NDK_PROJECT_PATH相关推荐

  1. android studio创建md,如何在Android Studio中设置*md文件打开方式

    最近在Android Studio中写一些Demo的时候,会顺便在里面创建一个.md文件用来进行Demo笔记的书写.然而Android Studio不带有markdown预览功能,所以我就琢磨如何在A ...

  2. 如何在Android Studio中设置*md文件打开方式

    说明:Androidstudio中的README.md文件默认使用电脑自带的编辑器打开,切换为开发工具自带的text文本打开 一,打开菜单栏: File–>Settings[这里也可以点击快捷栏 ...

  3. 如何在android studio中设置sdk path?

    为什么80%的码农都做不了架构师?>>>    Press F4 into Project Structure Left > SDKs Press +, add another ...

  4. android studio黄油刀依赖,如何在Android Studio中设置ButterKnife插件?

    我需要安装黄油刀.在哪里可以下载?我下载了一个.jar插件(但是如果该文件是我需要的那个文件),我已经安装了,但是当我点击选项"生成"时,不会出现使用butterknife的选项. ...

  5. android studio点击图片,如何在Android Studio中的模拟器图库中添加图像?

    如何在Android Studio中的模拟器图库中添加图像? 我正在开发图像过滤器应用程序. 但是,如果我没有任何图像,就无法真正尝试. 我知道我可以在电话中对其进行测试,但这并不相同,因为我需要错误 ...

  6. 在java中添加源_关于Java:如何在Android Studio中添加链接的源文件夹?

    在Eclipse中,我可以将源文件夹作为"链接的源文件夹"添加到我的android项目中. 如何在Android Studio中实现同一目的? 或者是否可以添加外部文件夹以构建gr ...

  7. android getter不起作用,java - 如何在Android Studio中自动生成getter和setter

    java - 如何在Android Studio中自动生成getter和setter Android Studio中是否有一个快捷方式可以自动生成给定类中的getter和setter? 14个解决方案 ...

  8. android编辑配置文件,如何在android studio中修改配置文件

    在使用android studio过程中,你知道怎么手动修改配置文件吗?下面是学习啦小编给大家整理的一些有关在android studio中修改配置文件的方法,希望对大家有帮助! 在android s ...

  9. android 最新sdk版本,详解如何在Android studio中更新sdk版本和build-tools版本

    一.首先看下Android开发用到的sdk目录: build-tools 保存着一些Android平台相关通用工具,比如adb.和aapt.aidl.dx等文件. aapt即Android Asset ...

最新文章

  1. Java凝视Annotation
  2. Linux 文件系统结构介绍
  3. tibco linux安装手册,TIBCO iProcess安装系列在Linux上升级Oracle9.2.0.4到9.2.0.7
  4. Mybatis使用statementType=STATEMENT实现动态传入表名或字段名
  5. 直播丨探究Oracle多租户架构
  6. c语言运算符优先级结合,C语言运算符优先级和结合性
  7. css 这个特性,你敢信
  8. k8s学习 : 前端是如何连接到后端数据库的?
  9. Windows下MySQL的安装步骤(有图详解)
  10. 在Linux下安装QT交叉编译,安装QT交叉编译 成功 + 测试
  11. 利用SPSS Modeler进行数据挖掘——探究不同程序语言的就业情况
  12. 为什么你996猝死,老板007没事?
  13. 这次要是讲不明白Spring Cloud核心组件,那我就白编这故事了
  14. 邮箱手动修改服务器配置,邮箱登录手动修改服务器配置
  15. java从键盘上输入一位整数_当输入1到7时_从键盘上输入一位整数,当输入1~7时,显示对应的英文星期名称的缩写。...
  16. Android推送集成方案总结
  17. Python爬虫学习实战
  18. 《富爸爸财务自由之路》阅读笔记
  19. 5G系统新型网络架构
  20. linux命令行怎么结束进程,linux结束进程命令

热门文章

  1. 关于iOS去除数组中重复数据的几种方法
  2. stand up meeting 1/14/2016
  3. Java线程:新特征-条件变量(转)
  4. Flash XSS 漏洞详解 根治的好办法
  5. WP7多国语言支持 from:http://blog.csdn.net/lee353086/article/details/6260676
  6. ASP.NET XML读取、增加、修改和删除操作
  7. Castle IOC容器实践之EnterpriseLibrary Configuration Facility
  8. push to origin/master was rejected错误解决方案(IDEA)
  9. IDEA - 解决 Maven 初始化配置 web.xml 为 2.3 的问题
  10. 领域模型中分散的事务如何集中统一处理(C#解决方案)