matlab能否独立做程序,如何将MATLAB程序编译成独立可执行的程序
如何将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 sglcppfilaname;自2006的版本后,替换为mcc -mfilaname;
4、安装\toolbox\compiler\deploy\win32目录下的MCRInstaller。
二、脱离matlab运行可执行程序
MCR是由matlab的运行环境,占用不到300M的对于用不同matlab版本生成的exe文件,MCR版本也会有不同,因此,在程序打包时,最好将相应版本的MCR一起打包。MCR环境的设置文件存放目录如下:
\toolbox\compiler\deploy\win32
文件名为MCRInstaller.exe。可将其拷贝到自己的文件夹中,(7.0以前的版本是mglinstaller.exe)。在MATLAB里运行可执行程序的办法是在前面加一个!,比如:!picshow,后缀名可有可无。在其它没有安装matlab的机器上运行exe文件前:
首先安装matlab的运行环境。在同一机器上可以并存不同版本的matlab环境(换句话说不同版本不兼容)。
其次是要将“MCRinstaller.exe安装目录\runtime\win32”这个路径添加到该计算机的环境变量中,通常是自动加载。
如果没有,也可手动安装,添加的方法是:
右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。
注:在安装过程中会弹出让安装http://www.doczj.com/doc/99a0d863561252d380eb6e57.htmlFramework可以不用安装。
最后就是将编译生成的相相关文件拷贝到同一目录下,双击即可运行。
问题:目前此方法可完全运行在没有安装MATLAB以及C/C++的电脑上,但是如果是在AMD 的CPU可以运行,但是不会出现任何MATLAB编译的界面。
美中不足就是,运行的时候dos的那个黑色地窗口一直存在。下面将实现去除黑屏的办法:消除运行MATLAB生成的exe程序的dos黑屏的办法
基于MATLAB生成exe文件后,每次运行都存在dos黑屏的问题,现在可以通过以下方法解决:
方法一:在命令窗口输入:
cd(prefdir)
edit compopts.bat
在打开的文件最后添加以下语句:
A.VC环境下:
set LINKFLAGS=%LINKFLAGS%/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup
B.LCC环境下:
set LINKFLAGS=%LINKFLAGS% -subsystemwindows
C. Borland:
matlab能否独立做程序,如何将MATLAB程序编译成独立可执行的程序相关推荐
- java程序编译成exe文件_将java程序编译成独立运行的exe文件
将java程序编译成独立运行的exe文件 众所周知java的程序可以"一次编译,到处运行",这个特性不错,但是实现这个特性的前提是当前的平台 必须有相应的jvm,而且如果当前平台的 ...
- oracle 跳出内层循环,内层程序中发生异常后,不会继续执行外层程序的语句
开发写了个存储过程需要我们审批,发现子程序中使用了异常处理语句, 通过以下实验说明这种写法的问题: SQL> create table test_number(test_id number); ...
- Matlab中用GUI做计算器,怎样用MATLAB中的GUI做一个简单计算器
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 function varargout = jisuanqi(varargin) gui_Singleton = 1; gui_State = struct ...
- 怎么把java程序放进php_如何在php脚本中执行Java程序?
I have been struggling with this for a while trying all sorts of options with no results – the file ...
- uni-app微信小程序动态样式设置;微信小程序style行内式无效;微信小程序style行内式编译报错;微信小程序:style设置样式
场景:微信小程序设置动态样式,有些时候是需要用到变量来书写的:但是实际使用发现,行内式书写虽然有效,但是会使得微信小程序的编辑失败:故需要使用动态的v-bind来写动态变量行内式样式(既使用:styl ...
- 程序和相关数据存放在计算机,当前正在执行的程序和相关数据存放在计算机的( )中。...
当前的程的中P协性(据在过程证数中的传输议可以保可靠. 他称之为,正执行计人富勒设量生大批的美国计出家庭住宅产的一种可以,年,意思是(,词复合是个. 效果列性的序技术经济农业评价,序和相关面是个方一般 ...
- matlab能倒入crv文件么,[转载]matlab GUI 编程——mcc转换m文件到应用程序
1.安装C编译器(前提是你的电脑已经安装了VC) >> mbuild -setup Please choose your compiler for building standalone ...
- matlab函数编译成库供C++调用(非常详细)
MATLAB具有着很高的计算性能,一些算法用MATLAB很容易实现,而用C++很难实现,如果想在C++中调用MATLAB编写的函数,可以将该函数编译成库文件,之后在C++中对其进行调用. 本文详细讲解 ...
- vscode+node.js 调试js程序/edge浏览器调试javaScript/edge浏览器独立调试编辑并保存代码/浏览器内开发者工具element/console布局(focus Mode)
文章目录 declaration vscode 对于javascript的支持 环境 使用node.js调试纯js代码 使用浏览器调试 试验代码 Note! edge浏览器独立调试编辑并保存代码 窗格 ...
最新文章
- 不用亲手搭建型了!华人博士提出few-shot NAS,效率提升10倍
- AI技术出海 - 阿里云GPU服务器助力旷视勇夺4项世界第一
- Java设计模式---外观模式
- 不能错过的RTS经典:《蘑菇战争2》是如何做玩法创新的?
- Linux下批量修改文件名
- linux服务器配置与管理_一个十多年的系统管理员,忘了如何管理一台服务器
- 数据结构与算法java_数据结构与算法(Java语言版).pdf
- 零基础新手应该如何学习平面设计
- Android Studio欢迎界面和登陆界面的设计(小白)
- adb安装apk python小工具
- 微信公众号的订阅号和服务号权限区别
- jpg格式的图片怎么压缩呢?手把手教你快速压缩jpg图片的大小
- Visual Studio C# Winform应用程序图标修改不了 更改图标不生效,发送桌面快捷方式与图标不一致解决办法
- 微信摇心愿如何选不同服务器,2020微信游戏摇心愿活动参与方法介绍
- Android网络通讯之Retrofit
- 研修国学请注意选好教材
- 自从学会了用python解析视频,都不用去找下载按钮在哪了,是真的方便
- Fata erro:Kinetis (connect):Timeout while halting CPU.CPU dones not stop. Sesion aborted!
- 使用swiftype实现站内搜索
- 《神经科学:探索脑》学习笔记(第23章 记忆系统)