linux / uinput.h缺少32位arm android ndk独立工具链?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux / uinput.h缺少32位arm android ndk独立工具链?相关的知识,希望对你有一定的参考价值。
我的程序使用linux / uinput.h头文件。这个头文件包含在arm64 android ndk独立工具链中(在android ndk文件夹中使用此命令生成:python.exe ./make_standalone_toolchain.py --arch arm64 --install-dir arm64 --deprecated-headers --stl gnustl
),但不是在32位arm中,生成方式相同。这是一个问题,因为我需要使用标题。我试图复制标题(一些研究显示该架构与uinput标头无关),但后来我得到了这个错误:
sysrootusrincludelinuxuinput.h:71:15: error: 'ABS_CNT' undeclared here (not in a function)
__s32 absmax[ABS_CNT];
^
这是怎么回事?为什么标题不包含在32位工具链中,为什么完全相同的头文件在复制时会出错?
答案
我解决了 - 它是Android NDK r16中的一个已知错误。我需要使用统一标头并在编译时使用此标志:
-D__ANDROID_API__=21
以上是关于linux / uinput.h缺少32位arm android ndk独立工具链?的主要内容,如果未能解决你的问题,请参考以下文章
Arm64 中缺少 SSAT 和 USAT 指令的替代方案?