错误:'__ NDK_FPABI__'没有命名类型

时间:2014-02-28 22:14:07

标签: android c++ android-ndk

在编译本机代码库时,我收到以下错误 -

<NDK-HOME>/platforms/android-17/arch-arm/usr/include/jni.h:235:68: error: expected ';' at end of member declaration
<NDK-HOME>/platforms/android-17/arch-arm/usr/include/jni.h:235:70: error: '\__NDK_FPABI__' does not name a type
...

有大量的重复。

平台相关详情如下 -

Native OS: Windows 7 (64 bit) with Cygwin64
NDK Version: r9c

报告了一个类似的问题here。但是,即使修改了LOCAL_CFLAGS,我也找不到建议的中间文件。

想知道你们中有些人是否已经遇到过这个问题,如果是的话,你们有没有解决这个问题?

1 个答案:

答案 0 :(得分:3)

好吧,最后摆脱了这些__NDK_FPABI__错误,我的本机代码编译得很好。实际上,安德鲁在我上一篇文章的链接中建议的中间文件(* .i和* .ii)中有微妙的提示;这些通常与找到合适的标题有关。一旦做出相关的改变,事情就像魅力一样。

调试此问题时我学到了很多东西 -

  • 问题与头文件有关。某些标题是从 / usr / include 中提取的,否则应该从 $ NDK_HOME / platform / $ ANDROID_VERSION / $ ARCH / usr / include 中选择。在Android makefile中进行必要的更改为我解决了这个问题。
  • 始终抵制向NDK文件添加热修复的诱惑。从长远来看,这将使您的生活更轻松。
  • 应该在 $ PROJECT_ROOT 中寻找中间文件(* .i,* .ii,* s和其他几个),而不是 $ PROJECT_ROOT / jni (假设本地代码在那里。)
  • NDK的最新版本,即ndk-r9d修复了__NDK_FPABI__相关错误的一些问题。

希望这有帮助!