【问题标题】:How to add relative path for srcs :[] in android.bp file如何在 android.bp 文件中添加 srcs 的相对路径:[]
【发布时间】:2019-07-23 12:31:12
【问题描述】:

我正在使用 androidmk 工具将 Android.mk 文件转换为 Android.bp 在我们有 Android.mk 链接的许多地方,因此它会生成 srcs:[] 的相对路径,但它不适用于 Android.bp 构建。 投掷错误: 路径在目录外:../../XX.cpp

源代码:[ “example1.cpp” "../../example2.cpp" --- 这个文件的错误 ]

路径在目录之外:"../../example2.cpp"

【问题讨论】:

    标签: android android-soong


    【解决方案1】:

    Soong 不允许这样做。您必须将您的 Android.bp 移动到一个共同的父文件夹,使其看起来像这样。

    srcs: ["a/b/example1.cpp", "example2.cpp"]
    

    【讨论】:

    • 还有其他解决方法...因为我有很多链接的 Android.mk 文件??我需要一些努力来重新调整允许 Android.mk 文件??
    • 如果您不介意绕过Soong 检查,可以尝试在Android.bp 文件夹或其子文件夹中创建源的符号链接:android.googlesource.com/platform/build/soong/+/refs/heads/…
    【解决方案2】:

    我们不允许引用当前目录及其子目录之外的引用

    有两种方法可以解决上述问题。

    • 通过“:myfilegroup”定义可在 src[s] 字段中使用的文件组模块。

    在父目录或根目录中定义以下代码:

        filegroup {
        name: "commaonfile",
        srcs: ["common/**/*.cpp"],
    }
    

    并在想要使用的内部目录中使用文件组,如下代码:

    cc_binary {
    name: "abc"
    srcs: [
           "src/a/b/abc.cpp"
           ":commaonfile"
          ],
    }
    
    • 将所有 Android.bp 转移到父目录并使其工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-29
      • 1970-01-01
      • 2017-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多