如何将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程序编译成独立可执行的程序相关推荐

  1. java程序编译成exe文件_将java程序编译成独立运行的exe文件

    将java程序编译成独立运行的exe文件 众所周知java的程序可以"一次编译,到处运行",这个特性不错,但是实现这个特性的前提是当前的平台 必须有相应的jvm,而且如果当前平台的 ...

  2. oracle 跳出内层循环,内层程序中发生异常后,不会继续执行外层程序的语句

    开发写了个存储过程需要我们审批,发现子程序中使用了异常处理语句, 通过以下实验说明这种写法的问题: SQL> create table test_number(test_id number); ...

  3. Matlab中用GUI做计算器,怎样用MATLAB中的GUI做一个简单计算器

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 function varargout = jisuanqi(varargin) gui_Singleton = 1; gui_State = struct ...

  4. 怎么把java程序放进php_如何在php脚本中执行Java程序?

    I have been struggling with this for a while trying all sorts of options with no results – the file ...

  5. uni-app微信小程序动态样式设置;微信小程序style行内式无效;微信小程序style行内式编译报错;微信小程序:style设置样式

    场景:微信小程序设置动态样式,有些时候是需要用到变量来书写的:但是实际使用发现,行内式书写虽然有效,但是会使得微信小程序的编辑失败:故需要使用动态的v-bind来写动态变量行内式样式(既使用:styl ...

  6. 程序和相关数据存放在计算机,当前正在执行的程序和相关数据存放在计算机的( )中。...

    当前的程的中P协性(据在过程证数中的传输议可以保可靠. 他称之为,正执行计人富勒设量生大批的美国计出家庭住宅产的一种可以,年,意思是(,词复合是个. 效果列性的序技术经济农业评价,序和相关面是个方一般 ...

  7. matlab能倒入crv文件么,[转载]matlab GUI 编程——mcc转换m文件到应用程序

    1.安装C编译器(前提是你的电脑已经安装了VC) >> mbuild -setup Please choose your compiler for building standalone ...

  8. matlab函数编译成库供C++调用(非常详细)

    MATLAB具有着很高的计算性能,一些算法用MATLAB很容易实现,而用C++很难实现,如果想在C++中调用MATLAB编写的函数,可以将该函数编译成库文件,之后在C++中对其进行调用. 本文详细讲解 ...

  9. vscode+node.js 调试js程序/edge浏览器调试javaScript/edge浏览器独立调试编辑并保存代码/浏览器内开发者工具element/console布局(focus Mode)

    文章目录 declaration vscode 对于javascript的支持 环境 使用node.js调试纯js代码 使用浏览器调试 试验代码 Note! edge浏览器独立调试编辑并保存代码 窗格 ...

最新文章

  1. 不用亲手搭建型了!华人博士提出few-shot NAS,效率提升10倍
  2. AI技术出海 - 阿里云GPU服务器助力旷视勇夺4项世界第一
  3. Java设计模式---外观模式
  4. 不能错过的RTS经典:《蘑菇战争2》是如何做玩法创新的?
  5. Linux下批量修改文件名
  6. linux服务器配置与管理_一个十多年的系统管理员,忘了如何管理一台服务器
  7. 数据结构与算法java_数据结构与算法(Java语言版).pdf
  8. 零基础新手应该如何学习平面设计
  9. Android Studio欢迎界面和登陆界面的设计(小白)
  10. adb安装apk python小工具
  11. 微信公众号的订阅号和服务号权限区别
  12. jpg格式的图片怎么压缩呢?手把手教你快速压缩jpg图片的大小
  13. Visual Studio C# Winform应用程序图标修改不了 更改图标不生效,发送桌面快捷方式与图标不一致解决办法
  14. 微信摇心愿如何选不同服务器,2020微信游戏摇心愿活动参与方法介绍
  15. Android网络通讯之Retrofit
  16. 研修国学请注意选好教材
  17. 自从学会了用python解析视频,都不用去找下载按钮在哪了,是真的方便
  18. Fata erro:Kinetis (connect):Timeout while halting CPU.CPU dones not stop. Sesion aborted!
  19. 使用swiftype实现站内搜索
  20. 《神经科学:探索脑》学习笔记(第23章 记忆系统)

热门文章

  1. 特殊的搜狗拼音输入法
  2. iText7高级教程之html2pdf——6.在pdfHTML中使用字体
  3. 近年来,小样本学习取得重大进展了吗?
  4. 美术生都要膜拜的AI,照片迅速被画成艺术画
  5. HDU 1114 Piggy-Bank 猪仔储钱罐(完全背包)
  6. 《C/C++ 面试 100 例》(十一)标准输入加速
  7. AOE网与关键路径、关键路径算法
  8. CC3200 TI RTOS LPDS模式
  9. win7连接sftp_Windows下用sftp巧妙打造安全传输
  10. 算术编码如何将原始数据编码为二进制