MATLAB中.m文件生成.dll
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++ 编译器
MATLAB中.m文件生成.dll的更多相关文章
- matlab 中txt文件(含字符及数值)处理
matlab 中txt文件(含字符及数值)处理 (2008-08-02 09:45:12) 转载▼ 标签: 杂谈 分类: matlab及C学习 Matlab文件操作及读txt文件ZZ 2008-07- ...
- 如何利用.snk文件生成DLL文件中的Publickeytoken
1.在该路径下C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin查找是否有sn.exe. 没有的话,从网上下载,注意需要的版本. 2.打开c ...
- matlab中m文件与m函数的学习与理解
1. m文件与m函数的区别 所谓 MATLAB 程序,大致分为两类: M 脚本文件 (M-Script) 和 M 函数 (M-function), 它们均是普通的 ASCII 码构成的文件. M 脚本 ...
- Android 中.aar文件生成方法与用法
https://i.cnblogs.com/EditPosts.aspx?opt=1 无论是用Eclipse还是用Android Studio做android开发,都会接触到jar包,全称应该是:Ja ...
- VC2010 利用 def 文件生成 dll 文件的方法
近期有个需求,要生成一个dll 文件.文件里的函数都是採用 stdcall 函数调用约定,可是不希望函数名被修饰(add 被修饰成 add@8). 这时就要用def 文件了. 比方我有以下两个函数: ...
- Eclipse中java文件生成jar文件的方法
在eclpse中找到你要导出的java程序 选中它 单击文件 -->export 在弹出的export对话框中找到 jar File 单击选中-->next 按图示顺序依次 选 ...
- matlab中mat文件简单存/取
>>abc=[,,,,,]; >>save data save file_name:命令可以将当前项目中变量的值保存到file_name中去,这里的data文件就是mat文件. ...
- MATLAB中的文件类型总结
% ***.m文件 : 脚本文件或者函数文件或者:% ***.mat文件:数据存储文件(二进制文件,可以ASCII码形式保存和加载,% 类似于单行EXCEL表格) ...
- 获得MATLAB中FIG文件的矩阵
在拓扑优化中,经常使用imagesc函数来显示最终的结果,往往会保存了Fig文件,却忘记保存mat文件. 根据已有的Fig文件,是可以找到其所显示矩阵.这个是我从fig数据结构中一层一层找到的,记录一 ...
随机推荐
- Android Studio优化编译速度
随着Android Studio的不断完善,其安卓开发者阵营也基本从Eclipse转移到了Android Studio,毕竟Android Studio是谷歌亲力亲为开发的官方开发软件.不过其最重要的 ...
- bootstrapvalidator API 文档地址: http://bootstrapvalidator.votintsev.ru/api/
bootstrap验证插件 bootstrapvalidator 文档API 地址 (原始作者英文):http://bootstrapvalidator.votintsev.ru/api/ 具体使用( ...
- PAT(B) 1017 A除以B(Java)
题目链接:1017 A除以B 分析 读取输入的A和B后,保存为字符串.模拟除法运算过程. 不要用BigInteger,因为会超时. 另外字符串经常要扩展(例如:append())的话,不要用Strin ...
- hdu 6375 度度熊学队列 (链表模拟)
度度熊正在学习双端队列,他对其翻转和合并产生了很大的兴趣. 初始时有 N 个空的双端队列(编号为 1 到 N ),你要支持度度熊的 Q 次操作. ①1 u w val 在编号为 u 的队列里加入一个 ...
- 创建新表,自动授权trigger
需求 一个用户下三个表,开发人员不定时进行rename表名称,create原表名称 as old_table 插入少量数据,另一个业务用户需要访问该表,由于表名称rename导致经常需要手工授权. 需 ...
- C# 钉钉第三方开发接入
钉钉开放平台 本文是针对钉钉开放平台的基于dotNetCore服务端开发和配置的描述 钉钉可开发的程序包括 企业内部应用,第三方企业应用,第三方个人应用 一.环境搭建 1.钉钉开发需要企业钉钉账号,如 ...
- dotnetcore下解压zip文件,解决中文文件名乱码问题
(迄今为止网上那些说的用Encoding.Default解决中文文件名乱码的都不能真正解决问题!) 1.在程序开始处 Encoding.RegisterProvider(CodePagesEncodi ...
- IOC实现-Unity
.NET中实现IOC有很多方式,比如:Unity.Ninject.Autofac.MEFNinject的实现参考<Pro ASP.NET MVC3.5 FrameWork>下面给出的是Un ...
- SQLAlchemy 在查询期间丢失与MySQL服务器的连接
遇到问题 pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query') 建立的 pymysq ...
- Xmind ZEN破解版来袭:如何去除水印
Xmind ZEN是一款十分优雅地思维导图软件,但是找不到其破解版,在导出图片时就会携带上水印. image-20190110110013642.png 当然,土豪请(点击这里关闭). image-2 ...