Взаимозависимости статических библиотек в Android NDK

Я работаю над приложением Android NDK, в котором используется ряд статических библиотек. Некоторые из этих статических библиотек зависят друг от друга (или конкретно от заголовочных файлов), но циклических ссылок нет. В файле Android.mk зависимой библиотеки я думал, что смогу просто использовать

$(вызов модуля импорта,#имя)

... из одной статической библиотеки в другую, но, похоже, это не работает, так как при компиляции я получаю ошибки отсутствующего файла заголовка. До сих пор я работал над этой проблемой, добавляя каталоги зависимостей «include» вручную в переменную LOCAL_C_INCLUDES, но мне кажется довольно беспорядочным беготня вверх и вниз по относительным путям к другим модулям.

Кажется, должен быть лучший способ сделать это. Я знаю, что LOCAL_EXPORT_C_INCLUDES работает при ссылке на статическую библиотеку из моей основной общей библиотеки (той, которую загружает NativeActivity), но похоже, что она не работает из статической библиотеки в статическую библиотеку.

Я просто как-то неправильно это настроил? Должны ли эти модули иметь возможность импортировать друг друга и получать включения автоматически?


person jujumbura    schedule 01.04.2014    source источник


Ответы (1)


Похоже, мне нужно было добавить модуль зависимостей в переменную LOCAL_STATIC_LIBRARIES зависимого Android.mk в дополнение к его импорту. Я предполагал, что список статических библиотек предназначен только для компоновки кода, но, по-видимому, он также влияет на экспорт заголовков.

person jujumbura    schedule 02.04.2014