Документация
ОС Аврора 5.1.5

Использование библиотек из Conan

В этой статье объясняется, как подключить собранные библиотеки из Conan к своему проекту в ОС Аврора.

Сonan предоставляет собранные библиотеки для ускорения сборки примеров и демонстрационных приложений, а также для облегчения разработки с использованием библиотек, которые расширяют функционал ОС Аврора.

Перед прочтением данного материала рекомендуется прочитать ознакомительную статью о Conan.

Добавление собственных библиотек на сервер Conan

Разработчикам доступно добавление собственной библиотеки на сервер Сonan. Для этого необходимо добавить рецепт для её сборки в данный репозиторий. Слияние будет выполнено после ревью данного запроса.

Для создания аналогичных артефактов, если это требуется для сертификации, для разработчиков опубликованы скрипты сборки библиотек на gitlab. Полный список имеющихся библиотек и скриптов для их сборки доступен в репозитории.

В данных инструкциях можно ознакомиться с процессом создания и публикации conan-пакетов для упомянутого репозитория.

Примечание. При разработке нужно учитывать, что Conan работает с cmake и не работает с qmake.

Использование предварительно собранных библиотек на сервере Conan

Помимо добавления собственных библиотек на сервер Сonan, можно использовать заранее собранные и размещённые библиотеки.

На сервере Conan библиотеки заранее собраны и размещены под различные версии ОС Аврора 4 и ОC Аврора 5. Для данных версий представлены архитектуры armv7hl, aarch64 и x84_64.

На сервере можно:

  • искать нужные библиотеки (ffmpeg, protobuf, openssl и др.);
  • проверять версии и совместимость;
  • скачивать пакеты для локальной разработки.

Библиотеки из сервера Conan можно использовать в проекте с помощью данного conanfile.py, взятого в качестве примера из проекта MapTemplate:

from conan import ConanFile

class Application(ConanFile):
    settings = "os", "compiler", "arch", "build_type"
    generators = "PkgConfigDeps"

    requires = (
        "mfw-offline-routing/1.0.6@aurora",
        "mfw-offline-geocoding/0.6.1@aurora",
        "mfw-map/0.6.1@aurora",
    )    

Сборка библиотек с помощью скриптов для сборки

Данная инструкция объясняет, как собирать библиотеки Conan:

Перед использованием библиотек необходима их предварительная сборка. Она необходима, так как изначально библиотеки поставляются в формате рецептов — каталогов, содержащих исходные данные, необходимые для сборки библиотеки. В результате сборки создаются conan-пакеты, внутри которых и располагаются собранные библиотеки.

Перед сборкой библиотек из репозитория должен быть установлен Conan по инструкции.

Аврора Platform SDK

  1. Запустить виртуальное окружение через утилиту sdk-chroot:

    {path_to_platformSDK}/sdks/aurora_psdk/sdk-chroot
    
  2. Скачать архивом репозиторий AuroraConan. Распаковать его, а затем запустить скрипт сборки рецепта из данного репозитория с помощью команды:

    ./tools/build-package recepies/{имя рецепта} {версия пакета}
    

    Например:

    ./tools/build-package recepies/ffmpeg/ 6.0.1
    

Аврора SDK

Существует два варианта сборки рецепта с помощью Аврора SDK:

  • без использования sfdk;
  • с использованием инструмента sfdk.

Сборка без использования sfdk

  1. Запустить виртуальную машину или Docker-контейнер с Build Engine вручную или через SDK.

  2. Скачать архивом репозиторий AuroraConan. Скопировать архив AuroraConan в Build Engine:

    scp -P 2222 -i {путь к Аврора SDK}/vmshare/ssh/private_keys/sdk AuroraConan-main.tar.gz mersdk@localhost:~/
    
  3. Зайти в Build Engine после запуска через SDK или Virtualbox:

    ssh -p 2222 -i {путь к Аврора SDK}/vmshare/ssh/private_keys/sdk mersdk@localhost
    
  4. Перейти в директорию с архивом AuroraConan и распаковать его:

    tar -xvf AuroraConan-main.tar.gz
    
  5. Зайти в распакованный архив и запустить скрипт сборки рецепта с помощью команды:

    ./tools/build-package recepies/{имя рецепта} {версия пакета}
    

    Например:

    ./tools/build-package recepies/ffmpeg 6.0.1
    

Сборка с использованием sfdk

  1. Запустить виртуальную машину или Docker-контейнер с Build Engine вручную или через SDK.

  2. Скачать архивом репозиторий AuroraConan. Скопировать архив AuroraConan в Build Engine:

    scp -P 2222 -i {путь к Аврора SDK}/vmshare/ssh/private_keys/sdk AuroraConan-main.tar.gz mersdk@localhost:~/
    
  3. Перейти в рабочую область Аврора SDK (директория с проектами).

  4. Активировать Build Engine через sfdk:

    {путь к Аврора SDK}/bin/sfdk engine exec
    
  5. Перейти в директорию с архивом AuroraConan и распаковать его:

    tar -xvf AuroraConan-main.tar.gz
    
  6. Зайти в распакованный архив и запустить скрипт сборки рецепта с помощью команды:

    ./tools/build-package recepies/{имя рецепта} {версия пакета}
    

    Например:

    ./tools/build-package recepies/ffmpeg 6.0.1
    

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.