Поиск и устранение неисправностей не может загрузить общий объект на целевом компьютере

Когда я загружаю и работаю на целевом компьютере приложение реального времени, которое зависит от общего объекта (.so), приложение реального времени не может запустить и загрузить библиотеку. В системном журнале я вижу ошибку как это:

ldd:FATAL: Could not load library xyz.so

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

Ошибка при загрузке общего объекта может указать на некоторую проблему с пропавшими без вести или повредить библиотечные зависимости на целевом компьютере. Проблема могла быть:

  • Загрузка к целевому компьютеру изменила или удалила некоторые необходимые файлы на целевом компьютере.

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

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

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

Check for Issues with Required Files

Чтобы проверять на эту проблему, соединитесь с целевым компьютером, затем пытаются создать, загрузить, и запустить модель slrt_ex_osc в качестве примера. Если работа с целевым компьютером по умолчанию, в командном окне MATLAB, вводит:

tg = slrealtime;
connect(tg);
open_system(fullfile(matlabroot,'toolbox','slrealtime','examples','slrt_ex_osc'));
slbuild('slrt_ex_osc');
load('slrt_ex_osc');
start('slrt_ex_osc');

Если можно успешно соединиться с целевым компьютером и сборкой, загрузкой, и запустить приложение реального времени, нет никакой проблемы с файлами от Целевого Пакета поддержки Simulink Real-Time на целевом компьютере.

Если вы не можете завершить те операции успешно, обновить программное обеспечение целевого компьютера при помощи force опция. Если работа с целевым компьютером по умолчанию, в командном окне MATLAB, вводит:

update(tg,'force',true);

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

Check Location of Shared Object on Target Computer

Чтобы проверять на эту проблему, используйте SSH или FTP, чтобы исследовать местоположение файла общего объекта на целевом компьютере. Для получения дополнительной информации смотрите, Выполняют Целевой компьютер Команды RTOS в Командной строке Целевого компьютера.

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

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

|

Похожие темы