Подключитесь к движку 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
,