Можно использовать компилятор MinGW-w64, чтобы создать файлы MEX, MATLAB® взаимодействуйте через интерфейс к библиотеке C++, и автономному движку MATLAB и приложениям MAT-файла. Для получения дополнительной информации см. "Поддержку MATLAB Компилятора C/C++ MinGW-w64".
Чтобы установить компилятор, используйте меню Add-Ons.
На вкладке MATLAB Home, в разделе Environment, нажимают Add-Ons > Get Add-Ons.
Ищите MinGW или выберите из Features.
yprime.c
ПримерМожно протестировать MinGW® компилятор путем создания yprime.c
пример. Скопируйте исходный файл в перезаписываемую папку.
copyfile(fullfile(matlabroot,'extern','examples','mex','yprime.c'),'.','f')
Если вам только установили компилятор MinGW в вашей системе, mex
команда автоматически выбирает MinGW. Перейдите к следующему шагу. Однако, если у вас есть несколько C или компиляторы C++, используйте mex -setup
выбрать MinGW.
mex -setup
Создайте файл MEX.
mex yprime.c
MATLAB отображает “Создание с” сообщением, показывающим, какой компилятор использовался, чтобы создать файл MEX.
Запустите функцию.
yprime(1,1:4)
Для получения дополнительной информации смотрите Поиск и устранение проблем и Ограничения при компиляции Файлы MEX C/C++ с MinGW-w64.
Не устанавливайте MinGW в месте с пробелами в пути. Например, не используйте:
C:\Program Files\mingw-64
Вместо этого используйте:
C:\mingw-64
Если вам создали исходные файлы MEX с различным компилятором, который поддерживает MATLAB, вы можете должны быть изменить код, чтобы создать с компилятором MinGW. Например:
Библиотека (.lib
) файлы сгенерированы Microsoft® Visual Studio® не совместимы с MinGW.
Объектная очистка не возможна, когда исключение выдается с помощью mexErrMsgIdAndTxt
функция от файлов MEX C++, приводящих к утечке памяти.
Неперехваченное исключение в файлах MEX C++, скомпилированных с MinGW, заставляет MATLAB отказывать.
Файлы MEX с переменными, содержащими большие объемы данных, не могут быть скомпилированы, когда компилятор исчерпывает память.