Пример shared_libs

21 мая 2024

ID shared_libs_example

Пример демонстрирует использование статических и динамических библиотек в KasperskyOS.

В примере программа Client выполняет следующие действия:

  • вызывает функцию из статической библиотеки hello_s;
  • вызывает функцию из динамической библиотеки hello_d1, скомпонованной вместе с программой и загружаемой в память при запуске процесса;
  • вызывает функцию из динамической библиотеки hello_d2, загружаемой в память при вызове функции dlopen() интерфейса POSIX.

Чтобы динамические библиотеки могли быть разделяемыми между разными процессами, в пример включена системная программа BlobContainer.

Для сборки и запуска примера используется система CMake из состава KasperskyOS Community Edition.

Файлы примера

Код примера и скрипты для сборки находятся по следующему пути:

/opt/KasperskyOS-Community-Edition-<version>/examples/shared_libs

Сборка и запуск примера

См. "Сборка и запуск примеров".

Для корректной работы примера shared_libs на Raspberry Pi после сборки примера и подготовки загрузочной SD-карты требуется выполнить следующие действия:

  • создать директорию /lib на загрузочной SD-карте, если этой директории не существует;
  • скопировать в директорию /lib на загрузочной SD-карте содержимое директории build/hdd/lib, которая генерируется во время сборки примера.

Вам помогла эта статья?
Что нам нужно улучшить?
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!