Построение статической библиотеки в aosp - PullRequest
0 голосов
/ 25 октября 2019

Я пытаюсь создать статическую библиотеку в aosp, которая затем используется другой программой.

Android.bp для статической библиотеки выглядит следующим образом:

cc_library_static {
    name: "libabc",

    srcs: [
        "src/abc.c",
        "src/abcd.c",
    ],

    include_dirs: [
        "my_folder/inc",
    ],
    vendor: true,
}

Хотя сборка прошла успешно, я не могу найти свой libabc.a вмоя выходная папка.

Нужно ли добавить libabc.a в PRODUCT_PACKAGES, чтобы добавить ее в сборку? Что мне здесь не хватает?

1 Ответ

0 голосов
/ 25 октября 2019

Трудно сказать без видимых источников. Мое первое предположение состоит в том, что ваша конфигурация сборки в порядке, и functions_in_libabc отсутствует ни в одном из файлов, перечисленных в вашем списке srcs.

Вы можете найти libabc.a в out/soong/.intermediates/ и проверить, содержит ли он вашиотсутствует ссылка.

nm $(find $ANDROID_BUILD_TOP/out/soong/.intermediates -name 'libabc.a')

Все, что вам нужно сделать в модуле в зависимости от libabc, это добавить его в список static_libs.

cc_binary {
    name: "my-module",
    srcs: [ "main.cpp" ],
    static_libs: [ "libabc" ],
}
...