MATLAB生成可执行文件
Matlab.M文件编译成可执行文件.exe

Matlab.M文件编译成可执行文件.exeMatlab .M文件编译成可执行文件.exe转载:如何将MATLAB程序编译成独立可执行的程序?如何将编译好的独立可执行程序发布在没有安装MATLAB的电脑上?下面将一步步实现:一、生成独立可执行的程序(exe文件)步骤1、安装编译器。
可有多种选择,matlab自带了一个LCC,推荐使用VC++6.0,我基于VS 2003实现。
2、设置编译器。
在matlab命令行输入mbuild –setup以及mex –setup,选择安装的c编译器。
3、调用编译器。
此处使用MATLAB下的一个GUI平台deploytool下完全实现。
在命令窗口输入deploytool即可看到。
具体使用方法请Help。
当然,也可以输入mcc -m filaname, filaname为要转成exe的m文件;注:在以前的版本中,用编译命令mcc -B sglcpp filaname;自2006的版本后,替换为mcc -mfilaname;4、安装<matlab path>\toolbox\compiler\deploy\win32目录下的MCRInstaller。
二、脱离matlab运行可执行程序MCR是由matlab的运行环境,占用不到300M的对于用不同matlab版本生成的exe文件,MCR版本也会有不同,因此,在程序打包时,最好将相应版本的MCR一起打包。
MCR环境的设置文件存放目录如下:<matlab path> \toolbox\compiler\deploy\win32文件名为MCRInstaller.exe。
可将其拷贝到自己的文件夹中,(7.0以前的版本是mglinstaller.exe)。
在MATLAB里运行可执行程序的办法是在前面加一个!,比如:!picshow,后缀名可有可无。
在其它没有安装matlab的机器上运行exe文件前:首先安装matlab的运行环境。
matlab函数exe文件生成

转载请标明:/chenyujing1234参考文章:/s/blog_4f0fc2700100moj2.html一、生成独立可执行的程序(exe文件)步骤1、安装编译器。
可有多种选择,matlab自带了一个LCC,推荐使用VC++6.0,我基于VS 2005实现。
MATLAB编译器1、产生C源码,并进而生成MEX文件。
这种MEX文件的优点是:一,当程序变量为实数,或向量化程度较低,或含有循环结构时,采用该法可提高运行速度;二,与ASCII码的M文件不同,MEX文件采用二进制代码生成,能更好地隐藏文件算法,使之免遭非法修改。
2、产生C或C++源码,以便与其他C/C++模块结合行成独立的外部应用程序。
运行所产生的应用程序,无需MATLAB环境的支持,但是往往需要MATLAB提供的C/C++数学库;如果调用了MATLAB绘图指令,则还需要MATLAB提供的C/C++图形库3、产生C MEX的S函数,与Simulink配合使用,以提高S-函数的运行速度4、产生C 共享库(动态链接库)或C++静态库,他们的使用无需MATLAB环境的支撑,但是需要MATLAB的数学库局限性1、无法编译脚本文件2、不支持用户自定义对象3、不支持eval,input,inline等函数4、不支持的MATLAB的Java接口2、设置编译器。
在matlab命令行输入mbuild –setup以及mex –setup,选择安装的c编译器。
[cpp]view plaincopy1.>> mbuild -setup2.Please choose your compiler for building standalone MATLAB applications:3.4.Would you like mbuild to locate installed compilers [y]/n? y5.6.Select a compiler:7.[1] Lcc C version 2.4 in D:\MATLAB701\sys\lcc8.[2] Microsoft Visual C/C++ version 7.0 in C:\Program Files\Microsoft VisualStudio .NET9.[3] Microsoft Visual C/C++ version 6.0 in D:\Microsoft Visual Studio10.11.[0] None12.piler: 214.15.Please verify your choices:16.piler: Microsoft Visual C/C++ 7.018.Location: C:\Program Files\Microsoft Visual Studio .NET19.20.Are these correct?([y]/n): y21.22.Try to update options file: C:\Documents and Settings\Administrator\Application Data\MathWorks\MATLAB\R14\compopts.bat23.From template: D:\MATLAB701\BIN\WIN32\mbuildopts\msvc70compp.bat24.25.Done . . .26.27.28.--> "D:\MATLAB701\bin\win32\mwregsvr D:\MATLAB701\bin\win32\mwcomutil.dll"29.30.DllRegisterServer in D:\MATLAB701\bin\win32\mwcomutil.dll succeeded31.32.--> "D:\MATLAB701\bin\win32\mwregsvr D:\MATLAB701\bin\win32\mwcommgr.dll"33.34.DllRegisterServer in D:\MATLAB701\bin\win32\mwcommgr.dll succeeded35.36.>>3、调用编译器。
matlab c编译

MATLAB C编译1. 简介MATLAB(Matrix Laboratory)是一种高级的科学计算和数值分析软件,广泛应用于工程、数学和科学领域。
它提供了丰富的函数库和工具箱,使得用户可以方便地进行数据处理、可视化、模型建立和仿真等操作。
然而,在某些情况下,使用MATLAB编写的代码可能需要更高的性能或更低的内存占用,这时就可以考虑使用MATLAB C编译器。
MATLAB C编译器是MATLAB软件中的一个工具,它可以将MATLAB代码转换为C代码,并生成可独立运行的可执行文件或动态链接库。
通过C编译,可以将MATLAB代码与C语言的高性能和低级别的特性相结合,从而提高代码的执行效率和资源利用率。
此外,C编译还可以使得MATLAB代码能够在没有MATLAB软件的环境中运行,增加了代码的可移植性。
在本文中,我们将介绍MATLAB C编译的基本原理和使用方法,并通过示例代码演示其应用场景和效果。
2. MATLAB C编译的原理MATLAB C编译器通过将MATLAB代码转换为等效的C代码来实现。
在转换过程中,MATLAB C编译器会对MATLAB代码进行语法解析和语义分析,然后根据代码的结构和功能生成相应的C代码。
生成的C代码会包含MATLAB函数的定义和调用,以及与MATLAB数据类型和运算等等相关的代码。
最终,C代码会被编译成可执行文件或动态链接库,可以在不同的平台和操作系统上运行。
MATLAB C编译器的转换过程是自动完成的,无需用户手动干预。
用户只需在MATLAB命令窗口中使用mcc命令来指定需要编译的MATLAB代码文件和编译选项,然后MATLAB C编译器会自动完成转换和编译的过程。
编译选项可以用来指定生成的可执行文件或动态链接库的名称、类型、目标平台等等。
3. MATLAB C编译的使用方法使用MATLAB C编译器可以分为以下几个步骤:步骤一:准备MATLAB代码首先,需要准备好需要编译的MATLAB代码。
matlab 函数编译c

MATLAB函数编译C介绍MATLAB是一种广泛使用的高级技术计算语言和环境,主要用于算法开发、数据可视化、数据分析和数值计算等领域。
然而,有时候我们可能需要将MATLAB的函数编译成C语言,以提高代码的执行效率或者将其集成到其他C/C++项目中。
本文将介绍如何使用MATLAB将函数编译成C语言的过程和一些常见的注意事项。
MATLAB函数编译的概述MATLAB提供了一个功能强大的编译器,可以将MATLAB代码转换成可执行的二进制文件,如可执行程序(.exe)或者动态链接库(.dll)。
在函数级别上,我们可以选择将MATLAB函数编译成C语言代码,这样就可以在其他项目中直接调用这些函数,无需依赖MATLAB运行时环境。
编译后的C代码具有较高的性能,并且可以与其他编程语言无缝集成。
编译C的步骤下面是将MATLAB函数编译成C语言的基本步骤:步骤1:选择要编译的函数首先,我们需要选择要编译的MATLAB函数。
通常情况下,建议选择一些计算密集型的函数进行编译,这样可以获得更好的执行性能提升。
步骤2:使用MATLAB的codegen命令MATLAB提供了一个名为codegen的命令,用来将MATLAB函数编译成C语言代码。
以下是使用codegen命令的基本语法:codegen -config cfg functionName在上面的命令中,cfg是一个编译器配置对象,用于指定编译器的选项和参数,functionName是要编译的函数的名称。
步骤3:配置编译器选项在使用codegen命令之前,我们需要配置编译器选项。
可以使用MATLAB的coder.config命令来创建一个编译器配置对象,并使用该对象的属性来配置编译器选项。
例如,可以设置编译目标、优化级别、输出文件名等。
步骤4:调用codegen命令进行编译配置好编译器选项后,我们可以调用codegen命令进行编译。
编译过程可能需要一些时间,具体取决于函数的复杂度和计算量。
用c语言matlab生成mif文件的操作步骤

用C语言Matlab生成MIF文件的操作步骤导言在数字电路设计中,M I F(Me mo ry In it ia l iz at io nF il e)文件是一种用于初始化存储器的文件格式。
通过编写M IF文件,我们可以在硬件描述语言(如Ve ri lo g)中初始化存储器的内容。
本文将介绍如何使用C 语言结合Ma tl ab来生成MI F文件的操作步骤。
准备工作首先,我们需要确保计算机已经安装了以下软件工具:-C语言编译器(如g c c或Vi su al St udi o等)-M at la b软件步骤一:编写C语言代码首先,我们需要编写一段C语言代码,用于生成M IF文件。
以下是一个简单的C语言示例代码:#i nc lu de<s td io.h>i n tm ai n(){F I LE*f il e;f i le=f op en("ou tpu t.m if","w");f p ri nt f(fi le,"DEP T H=256;\n");f p ri nt f(fi le,"WID T H=8;\n");f p ri nt f(fi le,"ADD R ES S_RA DI X=HE X;\n");f p ri nt f(fi le,"DAT A_R AD IX=H EX;\n");f p ri nt f(fi l e,"CON T EN T\n");f p ri nt f(fi le,"BEG I N\n");//在这里根据需要生成MI F文件的内容//...f p ri nt f(fi le,"END;\n");f c lo se(f il e);r e tu rn0;}在上述代码中,我们使用了标准的C语言文件操作函数来创建并写入M I F文件。
matlabruntime版本

matlabruntime版本Matlab Runtime版本是一种用于在没有安装Matlab的计算机上运行Matlab生成的应用程序的软件。
它提供了一个可执行文件,可以在没有Matlab开发环境的计算机上运行Matlab代码。
本文将介绍Matlab Runtime版本的背景、应用场景以及使用方法。
Matlab是一种广泛应用于科学计算和工程领域的高级计算环境和编程语言。
它的强大功能和灵活性使得许多科学家、工程师和研究人员选择使用它来解决各种复杂的数学和工程问题。
然而,由于Matlab的许可证限制和安装要求,有时候我们无法在没有Matlab 的计算机上运行Matlab代码。
这时,Matlab Runtime版本就派上了用场。
Matlab Runtime版本是由MathWorks公司开发的一个独立的运行时环境,可以在没有Matlab的计算机上运行Matlab代码。
它包含了Matlab的核心功能和运行时库,可以执行Matlab代码并生成结果。
使用Matlab Runtime版本,我们可以将Matlab代码打包成一个独立的可执行文件,方便在其他计算机上运行。
Matlab Runtime版本的应用场景非常广泛。
例如,在科学研究中,研究人员可以使用Matlab编写复杂的数学模型和算法,并将其打包成可执行文件,方便其他人使用。
在工程领域,工程师可以使用Matlab编写仿真模型和控制算法,并将其打包成可执行文件,用于实时控制和监测。
在教育领域,教师可以使用Matlab编写教学示例和实验,并将其打包成可执行文件,方便学生学习和实践。
使用Matlab Runtime版本非常简单。
首先,我们需要安装Matlab Runtime版本的运行时环境。
在安装完成后,我们可以使用Matlab 编写代码并调试,确保代码能够正确运行。
然后,我们可以使用Matlab Compiler将Matlab代码编译成可执行文件。
编译过程中,我们需要指定Matlab Runtime版本的路径和一些其他参数。
MATLAB Compiler 是MATLAB自带的一个编译器

MATLAB Compiler是MATLAB自带的一个编译器,它能将m文件转化成C、C++或p等各种类型的源代码,并根据需要生成可执行文件、lib文件(库文件)、dll文件或S函数文件等。
MATLAB 6.5使用的编译器包括了MATLAB的C\C++数学库函数以及图形库。
动态链接库(dll)是编写软件中常用的一种技术,MATLAB 提供了将M文件编制成dll文件的方法,本文就介绍如何在MATLAB6.5中将m 文件z转化成dll文件,然后在VC中调用该dll文件。
1、必须保证编译器的正确配置,因为编译器使用了C\C++库函数,所以在使用前需、要使用mex-setup和mbuild-setup两个命令对编译器进行配置,如果以前已经进行了配置就不需要这一步。
2、设置头文件和库文件的路径,可以参考精通VC与MATLAB联合编程<六>,配置完成如图1和图2:图1图2读者根据MATLAB安装实际情况输入头文件和库文件的路径。
3、在MATLAB打开文本编辑器(File->New->M-file)写一个简单的m函数:function y=huatu_test()x=-10:0.1:10;y=sin(x);plot(x,y,'*')文件保存为huatu_test.m。
4、在MATLAB命令窗口用如下命令生成dll文件和调用dll所需要的文件:mcc-t-W libhg:dlltest-T link:lib-h libmmfile.mlib huatu_test.m生成的文件将会保存在当前目录下,默认的当前目录为:MATLAB根目录\work,找到dlltest.h、dlltest.lib和dlltest.dll文件,这三个文件是我们需要的。
5、在VC中新建一个名为ceshi基于对话框的工程,在工程中添加一个名为"测试"的button按钮。
将dlltest.h、dlltest.lib和dlltest.dll文件拷贝到当前工程目录下,并通过Project->Add To Project->Files选择拷贝到当前目录下的三个文件,将文件引入工程。
Matlab生成.exe可执行程序

Matlab⽣成.exe可执⾏程序
由于在教学过程中需要演⽰Matlab程序,⽽教学机⼜未安装Matlab程序,因此有必要将Matlab程序⽣成.exe可执⾏程序,便于直接执⾏。
在Matlab中提供了Complier,可直接使⽤。
(⼀)什么是MATLAB Compiler?
它能够将你的matlab程序转换为⾃包含(self-contained)的应⽤程序和组件,这样你就可以将程序发放给你的终端⽤户,⽽且终端⽤户⽆需安装
Matlab就可以运⾏这些程序。
Matlab Compiler能够⽣成的应⽤或者组件包括下⾯这⼏类:
1、独⽴的应⽤程序
2、C和C++共享库(动态链接库,在Windows平台上是DLL,在Linux平台下是.so⽂件)
3、Excel插件
4、COM 和.NET对象
(⼆)MATLAB Compiler的构建过程
1、分析依赖关系
2、代码⽣成
3、创建归档⽂件(archive)
4、编译
5、链接
(三)执⾏过程
1、在Matlab的Command窗⼝下,可通过“help mcc”命令查看帮助
2、⽣成可执⾏程序:“mcc -m ××.m”,即可在当前⽬录⽣成××.exe程序
在当前⽬录⽣成可执⾏⽂件:
双击即可运⾏!
3、⽣成动态链接库:“mcc -l ××.m”,即可⽣成动态链接库。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB生成可执行文件(.exe文件)2010-07-28 14:59:25| 分类:matlab学习要将用Matlab语言编写的函数文件编译成可独立执行的*.exe文件(即可脱离Matalab环境的执行程序),首先要安装和配置好Matlab Compiler,一般来说,在安装Matlab时就已经安装了相应版本的Matlab Compiler。
只是不同版本的Matlab,其编译器的使用方法有一定的差异,这一点要引起一定的注意。
在确定安装好Matlab Compiler后,还需要对Compiler进行适当的配置,方法是在Matlab命令窗口输入:Mbuild –setup然后根据提示执行相应的操作,使用者可根据自己计算机中现有编译器的情况选择合适的编译器,如VC++ 6.0、VC++7.0、Bland C的编译器等,目前Matlab好象还不支持VC++8.0(我计算机安装的就是VC++2005,Matlab就无法识别)。
当然,如果你的计算机里根本就没有安装其他任何语言的编译器,也可选择Matlab自带的Lcc编译器,其实这个编译器对大多数用户已经够用了(我就是选择的Matlab自带的Lcc编译器)。
配置好编译器后,自然就是对自己编写的M文件进行编译了。
将M文件编译为独立可执行文件的语法是:>>mcc –m fun1.m fun2.m …..其中fun1就是最后的可执行文件的名称。
另外,也可通过采用命令开关-o指定编译最终目标文件的名称,如mcc –m main.m –o mrank_main,就是将编译后的文件指定为mrank_main.exe。
编译后的生成文件根据编译器的版本不同而不同。
具体的可参阅相关资料。
如果要在没有安装matlab的计算机上执行编译后的程序,首先要将MATLAB701 toolbox compiler deploy win32中的MCRinstaller.exe安装到该计算机上(7.0 以前的版本是mglinstaller.exe)。
其次是要将“MCRinstaller.exe安装目录runtimewin32”这个路径添加到该计算机的环境变量中,添加的方法是:右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。
第三步是将编译生成的相相关文件拷贝到同一目录下(当然其他目录亦可)。
第四步是打开MS-dos操作窗口,进入到编译后的*.exe程序所在的目录,执行编译生成的*.exe文件即可。
需要说明的一个问题:如果你的程序还附带有图片(如Version上的图标)、Web页面(如help 文档),在编译的时候可能无法与M文件一起编译(因为我没有试过,也没有看到有关这方面的介绍),这没有关系,先在计算机上执行一次你编译后生成的独立可执行文件,这时在同一目录下会生成一个以你编译后的程序名+_mcr结尾的文件夹,这时,你只需要把与程序相关的图标和Web页面拷贝到该文件夹中的Matlab program下面的一个子目录(一般与用于编译的文件夹名相同)中即可。
其他的方法还有:(以下是网上搜索到的方法,没有试验过,有兴趣的朋友可以试一试)方法方法二:如何将gui生成exe ?已有gui.m文件和gui.fig文件1 在matlab的command窗口中输入mcc -B sgl GUI.m2.将上步生成的文件包括*.m 文件和*.fig文件一起考到待运行的机器此时仍需matlab所必需的动态连接库。
3. 将<matlab path >/extern/lib/win32/mglinstallar.exel拷贝到到待运行机器上4.在机器上先运行mglinstallar.exe, 然后选择解压目录,将在指定目录下解压缩出bin和toolbox两子目录,其中在binwin32目录下就是数学库和图形库脱离MATLAB运行所需的所有动态连接库,共有37个。
可以将这些.dll考入system32, 也可以直接放在应用程序目录下。
而toolbox目录则必须与应用程序同一目录。
5.大功告成。
方法三:运行mcc -B sgl GUI.m 生成exe文件,把GUI.exe文件和GUI.ctf文件拷贝到目标电脑上,然后在目标电脑上安装MCRInstaller.exe ,安装完以后,我点击GUI.exe,它显示:this application has requested the Runtime to terminate it in an unusual way。
这个可能是哪里出错了呢?Solution:The segmentation violation can be caused due to a corruption in either the profile of the current user or by corrupted Windows libraries. In order to determine which is the cause, try logging in as a different username and run MATLAB.If you are able to successfully launch MATLAB under a different username:1. Log onto the machine, as the user that is receiving the error.2. On your desktop, click on Start > Run3. Type "regedit" in the Open text field and click OK, this will bring up the Registry Editor4. In the Registry Editor expand the following folders: HKEY_CURRENT_USER > Software > MathWorks > Matlab5. Under the MATLAB key, find the folder having the same name as the version number of the MATLAB that is crashing; and delete it. This Registry key will be regenerated the next time MATLAB is started.Click on the link below to view an image of the Registry Editor, which shows how to delete a registry key for MATLAB 6.5 (R13).After following these steps, you should be able to launch MATLAB successfully.If MATLAB crashes regardless of the user who is logged in, the crash may be caused by corrupted system libraries. For Windows NT, 2000, or XP, some customers have found that reinstalling Windows Service Packs have resolved the issue。
要生成exe文件有以下几个步骤:1、首先安装c编译器,如microsoft visual c++ 6.0;2、在matlab命令行里输入mbuild -setup,选择你安装的c编译器(按照提示操作即可);3、安装MATLAB7/toolbox/compiler/deploy/win32目录下的MCRInstaller;4、输入mcc -m filaname1 filename2 ……,filename1和filename2为要转成exe的m文件。
我也是最近才搞定的这个问题,按下述步骤进行,就没有问题,我已经运行成功,但是遇到你程序的bug的话,便会出现错误,关闭整个程序希望这些对你有用如何将MATLAB程序编译成独立可执行的程序?如何将编译好的独立可执行程序发布在没有安装MATLAB的电脑上?下面将一步步实现:一、生成独立可执行的程序(exe文件)步骤1、安装编译器。
可有多种选择,matlab自带了一个LCC,推荐使用VC++6.0,我基于VS 2003实现。
2、设置编译器。
在matlab命令行输入mbuild –setup以及mex –setup,选择安装的c编译器。
3、调用编译器。
此处使用MATLAB下的一个GUI平台deploytool下完全实现。
在命令窗口输入deploytool即可看到。
具体使用方法请Help。
当然,也可以输入mcc -m filaname,filaname为要转成exe的m文件;注:在以前的版本中,用编译命令mcc -B sglcpp filaname;自2006的版本后,替换为mcc -mfilaname;4、安装<matlab path>\toolbox\compiler\deploy\win32目录下的MCRInstaller。
二、脱离matlab运行可执行程序MCR是由matlab的运行环境,占用不到300M的对于用不同matlab版本生成的exe文件,MCR版本也会有不同,因此,在程序打包时,最好将相应版本的MCR一起打包。
MCR环境的设置文件存放目录如下:<matlab path> \toolbox\compiler\deploy\win32文件名为MCRInstaller.exe。
可将其拷贝到自己的文件夹中,(7.0以前的版本是mglinstaller.exe)。
在MATLAB里运行可执行程序的办法是在前面加一个!,比如:!picshow,后缀名可有可无。
在其它没有安装matlab的机器上运行exe文件前:首先安装matlab的运行环境。
在同一机器上可以并存不同版本的matlab 环境(换句话说不同版本不兼容)。
其次是要将“MCRinstaller.exe安装目录\runtime\win32”这个路径添加到该计算机的环境变量中,通常是自动加载。
如果没有,也可手动安装,添加的方法是:右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。