Запуск кода C++ под Matlab с использованием кластера sge?

У меня есть код Matlab, который выполняет функции C++, он хорошо работает на моем компьютере или любом другом рабочем столе, на котором я пытался его запустить. (чтобы запустить его на другом рабочем столе, я скопировал функции matlab/ C++ и файлы mex)

В последнее время я пытался запустить код на кластере sge, но я получаю сообщение об ошибке

"Неопределенная функция"img "для входных аргументов типа" double ""

"img" - это функция C++, вызываемая matlab.

кто-нибудь сталкивался с такой же проблемой? кто-нибудь знает как это решить?

10x Elad

1 ответ

Решение

Похоже, у вас разные ОС на ноутбуке / десктопе и SGE. Для разных архитектур нужноmex ваш код C++.

конфигурировать mex по твоему

>> mex -setup

Я настоятельно рекомендую использовать gcc, Теперь вы можете mex ваш код C++. Обратите внимание, что расширение для файлов mex отличается в windows/sge, а также в 32-битных и 64-битных системах.

Если у вас нет правильного расширения для файла mex (можно проверить с помощью mexext команда) Matlab не может найти функцию для запуска, и вы получаете ошибку, похожую на то, что вы получили.

Счастливая Ханука.

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