怎么样把matlab程序编译成exe文件

已举报 回答 关注
怎么样把matlab程序编译成exe文件
问在线客服
扫码问在线客服
  • 回答数

    7

  • 浏览数

    8,304

7个回答 默认排序
  • 默认排序
  • 按时间排序

已采纳
  如何将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”这个路径添加到该计算机的环境变量中,通常是自动加载。
  如果没有,也可手动安装,添加的方法是:
  右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。
  注:在安装过程中会弹出让安装Microsoft.NETFramework可以不用安装。
  最后就是将编译生成的相相关文件拷贝到同一目录下,双击即可运行。
  问题:目前此方法可完全运行在没有安装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
取消 评论
安装MCR7.14
取消 评论
1、C6++的话 载入文件按工具栏的感叹号就是编译运行了2、VS的话ctrl+F5
3、安装 Visual Studio 然后打开那个后缀为 vcproj 的文件。

取消 评论
将生成的EXE文件与PDF文件用Setup Factory 6打包软件进行打包,这样的话,生成的安装文件在其它电脑上安装就能有这两个文件了,但是如果其它机器上没有PDF文件阅读器,肯定打不开PDF文件,如果想打开,只有别外安装PDF文件阅读器,没其它办法。你打包时只是把这个文件连同EXE文件一起打包了,但是PDF文件的支持环境无法一同打包,只能另外再安装。
取消 评论
好像是对方必须装相应的.netframework吧
取消 评论
1. 新建一个安装包
对著工程,右击->添加->新项目->其他项目类形->安装与部署->安装项目

2.在新添加的安装包项目上右击->添加->项目输出->选中你的程序->ok

3.在新添加的安装包项目上右击->属性->系统必备->选中".Net framework 2.0" 和 "Windows installer 2.0"

4.在下面"指定系统必备组件的安装位置"中.选第二项.即:"从与我的应用程序相同位置下载系统必备组件"

搞定.打了半天字,希望能帮到你.呵呵
取消 评论
请检查一下程序中是否使用到路径,比如程序路径、可执行文件路径等。发布时看一下发布的程序路径和快捷方式的路径。PB中有函数检查程序路径。
取消 评论
ZOL问答 > 电子烟 > 系统 > 手机安装 > 怎么样把matlab程序编译成exe文件

举报

感谢您为社区的和谐贡献力量请选择举报类型

举报成功

经过核实后将会做出处理
感谢您为社区和谐做出贡献

扫码参与新品0元试用
晒单、顶楼豪礼等你拿

扫一扫,关注我们
提示

确定要取消此次报名,退出该活动?