Я задавался вопросом, существует ли способ создать '.exe' файл из ' .m' файла в MATLAB, таком, что он может быть выполнен в машине, которая не имеет MATLAB (как он, может быть сделан в C, C++).
Я знаю запись, что функция MATLAB является одним путем, но я не уверен, может ли это работать в машине без MATLAB.
Также я хотел бы скрыть свой код и просто создать скрипт, который может быть запущен пользователем, использующим его собственные файлы данных.
Компилятор Matlab - это стандартный способ сделать это. mcc
- это команда. Для запуска программ требуется среда выполнения Matlab; Я не уверен, можно ли его напрямую интегрировать с исполняемым файлом.
Если у вас установлен компилятор MATLAB, для компиляции есть опция графического интерфейса пользователя. Попробуйте ввести
deploytool
в командную строку. Mathworks неплохо документирует, как его использовать в этом видеоуроке: http://www.mathworks.com/products/demos/compiler/deploytool/index.html
Кроме того, если вы хотите включить пользовательский ввод, такой как выбор файла или каталога, просмотрите
uigetfile % or uigetdir if you need every file in a directory
для использования вместе с
guide
Если ваш код больше похож на процедуру анализа данных (а не на визуализацию / графический интерфейс), попробуйте GNU Octave . Это бесплатно, и многие из его функций совместимы с MATLAB. (Не 100%, но, возможно, 99,5%.)
Раньше было возможно скомпилировать Matlab на C с более ранними версии Matlab. Ознакомьтесь с другими инструментами, которые поставляются с Matlab.
Новейший код Matlab может быть экспортирован как jar-файл Java или .Net Dll и т. Д. Затем вы можете написать исполняемый файл для этой библиотеки - кстати, он будет запутан. Пользователи должны будут установить свободно доступную среду выполнения Matlab.
Как уже упоминалось, mcc / mcc.exe - это то, что вы хотите преобразовать код Matlab в код C.