Android 在构建启用VNDK的供应商模块时使用NDK标头
我有一个使用AOSP(android 9.0.0_r35)构建的本地供应商模块。 此模块使用Android 在构建启用VNDK的供应商模块时使用NDK标头,android,android-source,android-build,Android,Android Source,Android Build,我有一个使用AOSP(android 9.0.0_r35)构建的本地供应商模块。 此模块使用android/input.h标题。请注意,此标题包含在android中 启用时,生成模块失败,出现致命错误:“未找到android/input.h”文件错误 这是由于android构建系统(请参阅)在启用VNDK时没有导出CommonGlobalIncludes,因此frameworks/native/include(包含input.h)不在包含列表中 我尝试将libandroid添加到本地共享库中,但
android/input.h
标题。请注意,此标题包含在android中
启用时,生成模块失败,出现致命错误:“未找到android/input.h”文件
错误
这是由于android构建系统(请参阅)在启用VNDK时没有导出CommonGlobalIncludes
,因此frameworks/native/include(包含input.h)不在包含列表中
我尝试将libandroid添加到本地共享库中,但没有成功。
提及的标题不涉及NDK includes。
这个文件应该保持稳定,所以我认为从供应商模块使用它是安全的
是否包含允许使用NDK头的模块(本地\u共享\u库或本地\u头\u库)?
否则,添加$(ANDROID\u BUILD\u TOP)/out/soong/ndk/sysroot/usr/include/
以包含路径是否安全
测试代码:
Android.mk:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE:= testIncludeInput_vendor
LOCAL_PROPRIETARY_MODULE := true
LOCAL_SRC_FILES := test.cpp
LOCAL_SHARED_LIBRARIES := libandroid
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE:= testIncludeInput_system
LOCAL_SRC_FILES:= test.cpp
LOCAL_SHARED_LIBRARIES := libandroid
include $(BUILD_STATIC_LIBRARY)
test.cpp:
#include <android/input.h>
#包括