Когда вы вызываете 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-функции, используйте disp
функция для просмотра содержимого переменных MEX-функции. Вы не можете использовать save
для отладки MEX-функции переменных, поскольку генерация кода не поддерживает ее. Генерация кода не поддерживает объявление save
как extinsic. Вы также можете использовать fprintf
функция для просмотра содержимого переменных MEX-функции.
Чтобы отладить свои MEX-функции с помощью отладчика C/C + +, задайте свойство объекта строения MEXEnableDebugging
на 1
.
cfg = coder.config('mex'); cfg.EnableDebugging = 1; codegen -config cfg foo_mex
codegen -g foo_mex
The foo_mex
файл является файлом MEX, который вы хотите отладить. Вы можете отлаживать этот файл с помощью отладчика C или C++. Дополнительные сведения об отладке с помощью отладчика C/C + + на платформе Microsoft Windows см. в разделе Отладка на платформах Microsoft Windows.
Для получения дополнительной информации об отладке с помощью отладчика C/C + + на Linux® или платформы Mac, см. Отладка на платформах Linux или Отладка на платформах Mac.