繁体   English   中英

Android.bp 和 ninja:错误:未知目标

[英]Android.bp and ninja: error: unknown target

我在 Android O 的供应商目录下的packages/apps中有一个应用程序。该应用程序依赖于 HIDL 接口,该接口作为 java 库添加。

如果我使用Android.mk文件构建应用程序,它构建得很好。 如果我使用Android.bp文件构建应用程序,隐藏Android.mk ,它不会构建并失败并出现错误:

忍者:错误:未知目标'MODULES-IN-vendor-${vendor_name}-apps-${app_name}',你的意思是'MODULES-IN-vendor-${vendor_name}-apps-${another_app_name}'吗?

或者它可以只是

忍者:错误:未知目标'MODULES-IN-vendor-${vendor_name}-apps-${app_name}'

我的Android.bp看起来像:

android_app {

    java_libs: ["some.hidl.lib-V1.0-java"],

    java_static_libs: ["android.hidl.base-V1.0-java-static"],

    srcs: ["**/*.java"],

    android_resource_dirs: ["res/**"],

    name: "MyApplication",

    module_name: "MyApplication",

    package_name: "me.myself.MyApplication", // also tried just the name as it is done in Android.mk

    enabled: true,

    proguard_enabled: disabled

}

有任何想法吗?

不知道你是否解决了这个问题,我也遇到了这样的问题。 这是由于 Android 仅尝试包含在根文件夹下的“Android.bp”中定义的 3 级文件夹中的“Android.bp”文件:

optional_subdirs = [
    ....
    "vendor/*/*",
]

因此,您需要在 vendor/vendor_name/packages 中添加一个“Android.bp”,并指定 optional_subdirs 或只是通配符,如上所述。

就我而言,我只使用了Android.mk文件,但我错误地使用了 arm64

LOCAL_MODULE_TARGET_ARCH := arm64

但我正在为 x86_64 目标构建。 所以我改为

LOCAL_MODULE_TARGET_ARCH := x86_64

我工作了。 可能这个答案与它没有直接关系,但如果有人会犯同样的错误,那么它会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM