Диагностируйте ссылки модели на статические библиотеки или общие объекты

Некоторая сборка модели и проблемы во время выполнения происходят, когда я соединяю свое приложение реального времени со статическими библиотеками (.a) или общие объекты (.so).

Что означает эта проблема

При создании или выполнении в реальном времени приложение, которое соединяется со статическими библиотеками ссылок (.a) или библиотеки общего объекта (.so), существуют некоторые факторы, которые помогают вам пользоваться библиотеками, которые совместимы с QNX® Нейтрино® RTOS на целевом компьютере. Эти рекомендации полезны при поиске и устранении неисправностей использования библиотеки, включая:

  • Ссылка на библиотеку от Нейтрино QNX RTOS, который доступен в целевом пакете поддержки Simulink Real-Time

  • Общий объект, который включен в модель через блок FMU

  • Пользовательская статическая библиотека или общий объект, который соединяется с приложением реального времени

Попробуйте это обходное решение

Эти обходные решения исследуют возможные проблемы.

Link to Accessible Libraries or Objects

Когда вы соединяетесь со статической библиотекой или общим объектом, библиотека или объект должны быть:

  • Совместимый с нейтрино QNX RTOS

  • Доступный для набора инструментальных средств во время сборки

Проверяйте, чтобы гарантировать, что вы следовали инструкциям для совместимости библиотеки. Смотрите Внешнюю Интеграцию кода Библиотек и Кода C/C++ с Моделями Simulink Real-Time. Проверяйте, что набор инструментальных средств может получить доступ к библиотеке во время сборки. Помните, что Нейтрино QNX не может обработать пробелы в пути к файлам.

Install Shared Objects on Target Computer

После того, как вы создадите приложение реального времени, которое соединяется с общим объектом, установка и приложение реального времени и общий объект на целевом компьютере. Скопируйте общие объекты в местоположение на целевом компьютере, где они могут быть найдены и загружены во времени выполнения. Рекомендуемыми местоположениями является /lib, /usr/lib, или /usr/local/lib. Корневой доступ требуется, чтобы копировать файлы в эти местоположения.

Rebuild Real-Time Application When Rebuilding Static Libraries

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

Смотрите также

Похожие темы

Внешние веб-сайты

Для просмотра документации необходимо авторизоваться на сайте