Можете ли вы скомпилировать и запустить timestwo.c
или timestwo.f
файлы примеров? Смотрите Build C MEX Function или Build Fortran MEX File.
Вы используете поддерживаемый компилятор? Обновленный список поддерживаемых компиляторов см. в Поддерживаемые и совместимые компиляторы.
mex
команда не может найти файлы, расположенные в именах папок, которые содержат символы, отличные от ASCII.
ОшибкиЕсли вы связываете статическую библиотеку с файлом MEX, который является общей библиотекой, то можете получить сообщение об ошибке, содержащее текст recompile with -fPIC
. Попробуйте скомпилировать статическую библиотеку с -fPIC
флаг для создания независимого от положения кода. Для получения информации об использовании компилятора gcc смотрите https://www.gnu.org/. Обновленный список поддерживаемых компиляторов см. в Поддерживаемые и совместимые компиляторы.
Когда вы компилируете файл MEX на языке Фортран, используя формат формы свободного источника, MATLAB® отображает сообщение об ошибке следующей формы:
Illegal character in statement label field
mex
поддерживает фиксированную исходную форму. Для получения информации о различии между свободными и фиксированными исходными формами см. руководство по Ссылке языка ФОРТРАН 77.
Если файлы заголовков MATLAB генерируют несколько синтаксических ошибок, когда вы компилируете свой код в UNIX® системы, вы можете использовать не-ANSI® Компилятор C.
Наиболее распространенной проблемой строения при создании файлов MEX на C/C + + в системах UNIX является использование компилятора, не являющегося компилятором ANSI C, или непрохождение передачи флага компилятора, указывающего ему компилировать код ANSI C.
Один из способов узнать, есть ли у вас проблема с строением такого типа, заключается в том, что файлы заголовков MATLAB генерируют несколько синтаксических ошибок при компиляции кода. При необходимости получите компилятор ANSI C.