Выполнение MEX-функций

Когда вы вызываете MEX-функцию, передайте ей те же входы, которые вы используете для исходного MATLAB® алгоритм. Не проходите coder.Constant или любой из coder.Type классы в MEX-функцию. Можно использовать эти классы только с codegen функция.

Чтобы запустить MEX-функцию, сгенерированную MATLAB Coder™, вы должны иметь лицензии для всех тулбоксов, которые требуются MEX-функции. Например, если вы генерируете MEX-функцию из алгоритма MATLAB, который использует функцию Computer Vision Toolbox™ или System object™, чтобы запустить MEX-функцию, у вас должна быть лицензия Computer Vision Toolbox.

При обновлении MATLAB, перед запуском MEX-функций с новой версией, перестроите MEX-функции.

Отладка MEX-функций

Чтобы отлажить MEX-функции, используйте disp функция для просмотра содержимого переменных MEX-функции. Вы не можете использовать save для отладки MEX-функции переменных, поскольку генерация кода не поддерживает ее. Генерация кода не поддерживает объявление save как extinsic. Вы также можете использовать fprintf функция для просмотра содержимого переменных MEX-функции.

Отладка MEX-функций при помощи отладчика на C/C + +

Чтобы отладить свои MEX-функции с помощью отладчика C/C + +, задайте свойство объекта строения MEXEnableDebugging на 1.

cfg = coder.config('mex');
cfg.EnableDebugging = 1;
codegen -config cfg foo_mex
Также можно отлажить MEX-функцию, выполнив эту команду:

codegen -g foo_mex

The foo_mex файл является файлом MEX, который вы хотите отладить. Вы можете отлаживать этот файл с помощью отладчика C или C++. Дополнительные сведения об отладке с помощью отладчика C/C + + на платформе Microsoft Windows см. в разделе Отладка на платформах Microsoft Windows.

Для получения дополнительной информации об отладке с помощью отладчика C/C + + на Linux® или платформы Mac, см. Отладка на платформах Linux или Отладка на платформах Mac.