导航:首页 > 程序命令 > mex命令

mex命令

发布时间:2023-08-25 06:39:35

A. 在MATLAB中用C语言编写S函数时,怎么生成动态链接库(DLL)文件

在编写好S函数的实现代码*.c文件后,还需要在Matlab的命令输出窗口中进行命令行输入,完成对源代码的编译,这样才能被S函数模块所调用。在命令窗口中输入命令:
“mex

-g

RandomTimeDelay.c”
M文件S-函数在MATLAB环境下可以通过解释器直接执行,而C文件或其它语言编写的C-函数,则需要先编译成可以在MATLAB内运行的二进制代码:动态连接库或静态连接库,然后才可以使用,这些经过编译的二进制文件就称作MEX文件。用MEX命令来对*.c文件进行编译,然后会在相应的目录下生成对应的*.mexw32文件。然后就可以在simulink模块中引用这个s函数了。

B. MATLAB 如何配置编译器

在MATLAB的Command Window下输入命令 mbuild –setup,并根据MATLAB的提示选择合适的编译器,使用Microsoft Visual C++6.0,进行对C++连接环境的设置。
过程如下:
>> mbuild -setup
按照提示选择操作,选择编译器进行安装
然后,在MATLAB的Command Window下输入命令 mex –setup,进行对编译环境的设置。过程如下:
>> mex -setup
按照提示选择操作,选择你所需要的编译器就可以了。

C. MATLAB mex 找不到编译器怎么办

①选y后,MATLAB会列出当前机器上已经安装的、且与当前MATLAB版本兼容的所有C编译器,一般而言,MATLAB都会自带一个LCC编译器,然而LCC目前仅支持32位的MATLAB,所以你的机器上没有。

②选n后,MATLAB会列出所有与当前MATLAB版本兼容的C编译器类型(不管你是否已经安装,用于帮助用户选择合适的C编译器),你机器上已经安装的2个编译器,VC6.0:MATLAB从R2010b之后不再支持,所以选项里看不到;而SDK7.1选n时可以看到([11]),但选y时没有跳出,是因为MATLAB没有正确定位SDK。

③解决方法:

方法一:如果以缺省选项安装了SDK7.1(不改变默认安装路径),可以尝试输入n后,选择 [14] (注意:是14,不是11!),强制定位该编译器(网上有人用这种方法成功了:http://mlinking.blog.163.com/blog/static/185801922201331464626365/)

方法二:重新安装MATLAB,安装时选择32位进行安装,则自带LCC编译器。

方法三:选择适配的VS版本,下载安装后,重新配置MEX命令。

D. 请教关于利用Matlab中“mex”命令编译C程序的问题

1.准备好C语言程序,清楚C语言的入口函数
2.编写mexfunction函数。mexfunction函数为C语言与MATLAB语言的接口函数。调用实例在mylinedetect.c文件中.在MATLAB中调用mex指令编译相关文件,将C语言编译为MEX文件。
3.编译完成后,生成mylinedetect.mexw32或mylinedetect.mexw64文件,此文件即mex文件,用于MATLAB与C语言接口函数.
4.编译完成之后,编写MATLAB函数,调用MEX文件。以MEX文件的形式调用编译完成的C语言函数[o1,o2]=mylinedetect(double(X).');......
5.输出结果,上述linedetect函数完成图像中直线检测功能,带入MATLAB中调用后形成结果。

E. MATLAB 错误使用 mex

要解决相关的mex命令找不到编译器,首先就需要了解相关命令调用的配置文件的路径位于:<MatlabRoot>/bin/win64/mexopts,里面有很多和和编译器以及SDK相关的环境配置文件,如图所示。

1、matlab版本问题

标明了不同类型版本的编译器配置文件,如果编译器版本的配置信息不在这个文件夹里面自然会提示找不到到文件夹。这类问题网上有很多解决方法,提供了很多相应版本的配置文件,只要将其拷到mexopts文件夹下,就解决了。

2、配置文件里面的路径和电脑的实际路径不一致

解决方法:要仔细核对 msvc2013.xml和msvcpp2013.xml这两个配置文件的信息。

(5)mex命令扩展阅读:

通过使用MEX文件,MEX文件使得调用C函数和调用Matlab的内置函数一样方便。MEX文件是由原C代码加上MEX文件专用的接口函数后编译而成的。

MEX文件实现了一种接口,它把在Matlab中调用函数时输入的自变量通过特定的接口调入了C函数,得出的结果再通过该接口调回Matlab。该特定接口的操作,包含在mexFunction这个函数中,由使用者具体设定。

阅读全文

与mex命令相关的资料

热点内容
centos55命令 浏览:705
美国干编程有什么条件 浏览:505
阿里云服务器远程链接 浏览:249
墨镜慧眼怎么下载厂商的app 浏览:61
iphone加密专线 浏览:491
aes产生加密文件 浏览:415
编程实现蓝牙通信 浏览:768
怎么恢复掉签的app 浏览:847
服务器部署ip地址 浏览:321
涉密场所周边安全防护距离算法 浏览:672
安卓fpse模拟器怎么设置加速 浏览:947
建行app怎么生成电子签章 浏览:508
获取当前时间javadate 浏览:74
带密码的wifi如何加密 浏览:237
服务器怎么变成阵列 浏览:718
web前端黑客技术pdf 浏览:71
育儿百科全书pdf 浏览:600
任务栏启动命令 浏览:912
编译优化等级区别 浏览:757
unix网关命令 浏览:877