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数据结构中一层一层找到的,记录一 ...
随机推荐
- php 常用正则表达 邮箱 手机号啥的
class RegexConst { const REGEX_MOBLIE_86 = '/^1(3|4|5|7|8)\d{9}$/';//中国手机号 const REGEX_MOBLIE_852 = ...
- elasticsearch7.1.1【win】下载安装
下载:https://www.elastic.co/cn/downloads/elasticsearch 历史版本下载:https://www.elastic.co/cn/downloads/past ...
- 日常工作问题解决:centos7下使用yum安装软件报yum.pid锁定
问题描述: 在centos7下使用yum进行软件安装时报yum.pid已经被锁定,如下所示: [root@centos7-129 ~]# yum -y install dhcp 已加载插件:faste ...
- vue A对象赋值给B对象,修改B属性会影响到A问题
实际在vue中 this.A = this.B,没有进行深层赋值,只是把this.A的地址指向了与this.B相同的地址,所有对于A的修改会影响到B. 解决相互影响的思路是在this.A必须是新建的 ...
- Java与计算机常识
DB2 IBM公司的数据库 Oracle Orcle的数据库 Mysql 数据库(免费) 1. jetty 小型服务器(类似于tomcat) Jetty 是一个开源的servlet ...
- 监听lsnrctl status查询状态报错linux error 111:connection refused
报错现象 今天给客户一个单实例环境配置监听,创建正常,查询状态异常报错 tns tns tns linux error :connection refused 匹配MOS Starting TNS L ...
- 面试经典算法:快速排序Golang实现
Golang快速排序 定义 快速排序由C. A. R. Hoare在1962年提出.快速排序是对冒泡排序的一种改进,采用了一种分治的策略. 基本思想 通过一趟排序将要排序的数据分割成独立的两部分,其中 ...
- (一)JMS简介
一.简介 JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进 ...
- Visual Studio 开发大量 JavaScript 代码项目程序崩溃的解决方案
最近公司做新项目,基于 Bootstrap.AngularJS 和 kendo 开发一套后台的管理系统,在项目中使用了大量的 JavaScript 文件,这两天 Visual Studio 2015 ...
- Java Web 深入分析(3) CDN
CDN (Content Delivery NetWork) 内容分发网络,它是构筑在现有互联网基础上的一种先进的流量分配网络.区别于镜像,相当于是 CDN = 镜像(mirror) + 缓存(Cac ...