1.配置編譯環境
在命令行窗口輸入:
mbuild -setup
如果出現以下提示信息說明成功:

如果提示信息為:
錯誤使用mbuild(line 164)
Unable to complete successfully.
未找到支持的編譯器或SDK。您可以安裝免費提供的MinGW-w64 C/C++編譯器;請參閱安裝MinGW-w64 編譯器。如需更多選項,請訪問http://www.mathworks.com/support/compilers/R2017a/。
則需要安裝MinGW-w64C/C++編譯器。
安裝完成后,matlab每次運行添加環境變量
setenv('MW_MINGW64_LOC','C:\TDM-GCC-64') %其中C:\TDM-GCC-64是TDM-GCC默認安裝地址,改成自己相應的地址即可
或者直接系統添加。
成功后在命令行輸入:
mex -setup %以C語言編譯

或
mex -setup C++ %以C++語言編譯

2.編寫.m文件

3.用.m文件生成dll文件
首先在命令行中輸入"deploytool",成功后出現如下窗口,選擇"Library Compiler "。

其次在出現的MATLAB Compiler頁面中在Type欄中選擇".NET Assembly",在EXPORTED FUNCTIONS欄中選擇自己剛剛編寫的.m文件,Library information這一欄填寫dll文件名就可以了,Namespace這一欄可以更改ClassName(這個ClassName是在C#代碼中調用該MATLAB函數時使用的,所以盡量不要使用它的默認值Class1這樣沒有意義的名字),並點擊右上角的Package圖標進行打包。
當出現如下結果時,即為dll文件生成成功。

在其自動打開的文件夾中,$\for_redistribution_files_only目錄下就會有生成好的dll文件

值得一提的是,在$\for_testing目錄下有一個剛剛定義的cs文件,與剛剛在MATLAB Compiler頁面填寫的ClassName同名,這個文件是用來讓C#調用MATLAB函數的。
參考鏈接:
MATLAB 未找到支持的編譯器或 SDK。您可以安裝免費提供的 MinGW-w64 C/C++ 編譯器
