【问题标题】:Android NDK - Build does not find NDK includes such as <Queue>,Android NDK - 构建时找不到 NDK 包括 <Queue> 等,
【发布时间】:2014-12-04 11:20:06
【问题描述】:

我已按照安装指南中的说明设置 NDK,已将 PATH 变量设置为我的 NDK 安装。

现在在 Android Studio 中构建我的应用时,我收到一个构建错误,提示我找不到包含。这是我的第一个 NDK 项目,所以我猜是配置有问题,编译器不知道在哪里查找包含文件。

我还在 local.properties - 文件中设置了 NDK 目录。可以找到编译器,但不包含。

这是编译器的输出:

错误:任务 ':app:compileDebugNdk' 执行失败。

com.android.ide.common.internal.LoggedErrorException:无法运行命令: D:\android-ndk-r10c\ndk-build.cmd NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=D:\Programmieren\SoundTouch-Android-master\app\build\intermediates\ndk\debug\Android.mk APP_PLATFORM=android-20 NDK_OUT= D:\Programmieren\SoundTouch-Android-master\app\build\intermediates\ndk\debug\obj NDK_LIBS_OUT=D:\Programmieren\SoundTouch-Android-master\app\build\intermediates\ndk\debug\lib APP_ABI=all 错误代码: 2 输出: D:\Programmieren\SoundTouch-Android-master\app\src\main\jni\soundtouch-jni.cpp:3:17: 致命错误:队列:没有这样的文件或目录 #包括 ^ 编译终止。 make.exe: *** [D:\Programmieren\SoundTouch-Android-master\app\build\intermediates\ndk\debug\obj/local/arm64-v8a/objs/soundtouch/D_\Programmieren\SoundTouch-Android-master \app\src\main\jni\soundtouch-jni.o] 错误 1

我希望你有一个想法,可以帮助我。

【问题讨论】:

  • 您是否正确设置了操作系统路径
  • 我在windows环境路径设置中有一个路径指向:D:\android-ndk-r10c\(也就是NDK的位置)。
  • 不确定这是否是原因,因为我的 NDK 经验很旧,但是您有 .c 或 .cpp 文件吗? GCC 可能会将 .c 文件视为 C 代码,因此不使用 c++ 包含。
  • 你添加了一些 stl lib、stlport 或 gnustl 吗?
  • 您是否在 Cygwin 中运行 NDK? (愚蠢的问题,直觉必须问)

标签: java android c++ android-ndk


【解决方案1】:

确保您的 build.gradle 包含以下内容:

android.defaultConfig.ndk {
    stl "c++gnustl_static"
    abiFilter "armeabi"
}

【讨论】:

    猜你喜欢
    • 2012-06-14
    • 1970-01-01
    • 2012-11-20
    • 1970-01-01
    • 2012-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-28
    相关资源
    最近更新 更多