Подключитесь к движку Matlab из C в Linux

Я пытаюсь вызвать движок Matlab программно из программы на C для Linux (Matlab r2009a, Ubuntu 9.10).

У меня есть собственный код (который работает в Windows), но сейчас я просто пытаюсь заставить программу Matlab "engdemo.c" работать на Linux. Мне удалось скомпилировать и связать его (после включения около 15 -l<lib> включает командную строку gcc) и даже разрешает все динамические ссылки во время выполнения с помощью некоторой магии ldconfig.

Но когда программа запускается, я просто получаю сообщение об ошибке "Не удается запустить MATLAB engine", и программа завершается без указания причины ее сбоя.

Кто-нибудь сделал эту работу? Что я забыл сделать?

ps Я изначально спрашивал об этом в SuperUser, потому что я думаю, что это связано с конфигурацией, но я вижу другие связанные с движком Matlab? вот и я решил попробовать.

2 ответа

Решение

Ты должен бежать strace в вашей C-программе, чтобы увидеть, где что-то пойдет не так. Как правило, я обнаружил, что большую часть времени это сводится к:

  • Не имея csh установлены
  • Если окружающая среда установлена ​​неправильно, иногда LS_COLORS облажаться csh

MathWorks задокументировал это на своем веб-сайте, в частности следующее примечание:

Примечание: для запуска движка MATLAB на платформе UNIX у вас должна быть оболочка C csh установлен в /bin/csh,

Другие вопросы по тегам