问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

matlab gui 生成独立可执行的程序 在其他电脑上不能运行

发布网友 发布时间:2022-05-14 09:59

我来回答

2个回答

热心网友 时间:2023-10-13 11:30

要将用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安装目录\runtime\win32”这个路径添加到该计算机的环境变量中,添加的方法是:

右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。

第三步是将编译生成的相相关文件拷贝到同一目录下(当然其他目录亦可)。

第四步是打开MS-dos操作窗口,进入到编译后的*.exe程序所在的目录,执行编译生成的*.exe文件即可。

需要说明的一个问题:

如果你的程序还附带有图片(如Version上的图标)、Web页面(如help文档),在编译的时候可能无法与M文件一起编译(因为我没有试过,也没有看到有关这方面的介绍),这没有关系,先在计算机上执行一次你编译后生成的独立可执行文件,这时在同一目录下会生成一个以你编译后的程序名+_mcr结尾的文件夹,这时,你只需要把与程序相关的图标和Web页面拷贝到该文件夹中的Matlabprogram下面的一个子目录(一般与用于编译的文件夹名相同)中即可。

其他的方法还有:(以下是网上搜索到的方法,没有试验过,有兴趣的朋友可以试一试)

方法一:在matlab下的workspace里打comtool,点file-open project将我们先前建好的comtest.cbl工程文件打开,再点component--package component就实现了打包,此时到comtest\distrib文件夹里看,生成的comtest.exe就是打包后的解压程序,双击它会解压出一些文件,再点击解压出来的_install.bat就可以实现安装

方法二:如何将gui生成exe ?

已有gui.m文件和gui.fig文件

1 在matlab的command窗口中输入

mcc -B sgl GUI.m

2.将上步生成的文件包括*.m 文件和*.fig文件一起考到待运行的机器

此时仍需matlab所必需的动态连接库。

3. 将 <matlab path >/extern/lib/win32/mglinstallar.exel拷贝到到待运行机器上

4.在机器上先运行mglinstallar.exe, 然后选择解压目录,将在指定目录下解压缩出bin和toolbox两子目录,其中在bin\win32目录下就是数学库和图形库脱离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 e 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 > Run

3. Type "regedit" in the Open text field and click OK, this will bring up the Registry Editor

4. In the Registry Editor expand the following folders: HKEY_CURRENT_USER > Software > MathWorks > Matlab

5. 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

这个是启动6.5时出类似错误的解决方法,你试试7.0可否成功吧

热心网友 时间:2023-10-13 11:31

需要安装matlab运行环境才可以
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...地形、气候、河流、物产、经济发展状况、文物古迹、旅游资源等方面... 二本博士生好找工作吗(二表b是什么意思) 二表b大学是什么意思? 上海女明星有哪些 上海住了哪些明星 求那种感情强烈的小说,类似于 缺氧――和康巴男人的一夫多妻实验 那个... 像和市长千金爱上我相似的小说 【200分】寻找好看小说,都市类,像《和空姐同居的日子》差不多的小说... 推荐几部好看点的都市言情小说, 比如:《和空姐同居的日子》_百度... 求一个lp仿传奇单机版v3.05版的修改器下载地址! cad版本低如何打开高版本的图纸 如何用matlab生产exe文件 matlab含有文件夹打包-exe MATLAB打包成独立exe文件,安装之后提示错误 如何将matlab程序转换成可执行exe文件。转化完成后,将可执行exe文件拷贝到没有装matlab的电脑,可否运行 MATLAB的程序怎么做成.exe??? matlab 将m文件打包成exe后,界面可以打开,也没报错,点击计算按钮,没有任何反应,无法计算是什么问题? Matlab打包成exe文件,安装时报错,是这样的错误,源程序第七行有问题,但我运行时正常啊,求解 matlab打包 怎样把matlab程序编译成exe文件 Matlab 7.0版本gui如何打包生成exe文件 被冻结,解冻不成功怎么办? 就是关于被盗冻结,怎么办? 通过QQ自助冻结了怎么解冻 有道精品课下载的视频如何转存? 有人跟我一样莫名其妙的心情低落,又突然自己好了的吗?怎么回事? 我的心情会在一天内莫名其妙变化? 心情低落突然间好了? 为什么听见天空有雷声阵阵要下雨,心情就莫名其妙的很好,以前超级讨厌下雨天,不知现在怎么会这样,是心 运动后胃口很好,心情也会莫名其妙高兴,这是为什么 汽车行业,干电气PLC调试,很有前途吗?汽车行业的电气工程师 拼音字母m是这样占格吗? 职业规划 该怎么做? 怎样策划自己的职业规划和目标? 怎样进行职业规划,让生活更完整? 如何做职业选择,职业规划? 什么是职业规划~ 怎样写一份职业规划书? 秋香黄呢大衣会显皮肤黑吗? 肤色偏黑的人穿米*的衣服好不好看?如果不行的话,什么颜色比较适合? 皮肤黑穿黄衣服好看吗? 灵芝的种类灵芝的种类有哪些?该如何食用? 我的信用卡逾期了1个月了真心还不起了我承担本金和利息能做分期还款吗? 电台版什么意思? 有些歌曲为什么要叫电台版?电台版是什么意思? 歌曲电台版的 有些歌曲为什么要叫电台版?一般都在哪个电台? 暗藏后悔(电台版) 歌词 很多歌曲都说是电台版,是哪个电台? 一直很安静电台版歌词