基于MCR的MATLAB使用案例
写在前面
众所周知MATLAB是一款强大的数学软件,便捷的数值计算能力以及对众多的算法的集成,在科研和工程中得到了广泛的应用。产品中使用了MATLAB程序,就必须要求安装MATLAB, 可是交付给用户使用来说不太适合,当然不仅仅是因为MATLAB是商业软件。
本文将介绍如何利用MCR(MATLAB Compiler Runtime)在未安装MATLAB的机器上运行MATLAB程序。
软件
计算机A:LINUX(deepin) + MATLAB(R2017b)
计算机B: LINUX (deepin) + MCR(v93)
其中MATLAB版本和MCR版本要匹配,MCR可以在Mathworks官网下载并免费使用。
编译matlab程序为独立应用
在计算机A上创建工作目录,在该目录中创建add.m、prod.m、sum_prod.m文件。
add.m
function [c] = add(a,b)c = a + b;
end
prod.m
function [c] = prod_a(a,b)c = a.*b;
end
sum_prod.m
a = [1,2,3,4,5];
B = [6,7,8,9,10];
sum = add(a,b);
prod = prod_a(a,b);
disp(sum);
disp(prod);
在MATLAB命令行执行如下命令:
>> deploytool
接下来选择编译器,
添加脚本文件
单选框选择 “Runtime downloaded from web”, 接下点击package, 出现如下对话框
选择编译结果的存放目录,选好后,编译开始执行,稍等片刻,输出结果。在sum_prod目下有三个子目录,选择将for_redistribution_files_only复制到计算机B上。
for_redistribution_files_only里面的文件如下:
安装MCR
根据计算机A上的的MATLAB版本到Mathworks官网下载对应版本的MCR,或者在计算机A上MATLAB命令行中执行如下命令:
>> mcrinstaller
显示mcrinstaller所在目录,直接复制到计算机上安装。
安装步骤:
- 解压MCRInstaller.zip
- 使用sudo ./install 安装,出现界面,默认即可(会提示设置环境变量)
- 设置环境变量
设置换环境变量
命令行输入:
sudo gedit /etc/profile
在文件最后添加,如下
在linux 命令行下输入:
source /etc/profile
使环境变量生效
注:切换到for_redistribution_files_only目录,查看readme.txt,其实关于MCR的相关配置,以及使用方式都在这里说明了。
运行编译好的独立程序
有两种运行方式(都是每次开启一个终端必须重新设置或者使环境变量生效), 前提切换到可执行文件所在目录。
- 第一种
- 之前已经设置过环境变量了(手动),现在只需要在终端中输入使之生效:
>> source /etc/profile
2. 在终端输入:
>> ./sum_prod
3. 运行结果如下
- 第二种(不需要手动设置环境变量)
- 具体的在Linux命令行输入如下:
./run_sum_prod.sh /usr/local/MATLAB/MATLAB_Runtime/v93/
2. 运行结果如下:
上述方法在实际使用时多少有些麻烦,如何在进入系统时,让系统自己将上述环境变量设置好呢?
进入系统自动设置环境变量
可以通过更改.bashrc文件实现在每次登陆系统时将环境变量自动设置好
/etc/bashrc
~/.bashrc
基于MCR的MATLAB使用案例相关推荐
- matlab最小二乘法参数辨识,基于最小二乘法的MATLAB辨识仿真实验
<工业控制计算机>2013 年第 26 卷第 7 期基于最小二乘法的 MATLAB 辨识仿真实验 崔秀美 刘文杰 陈 澄 (苏州大学机电工程学院,江苏 苏州 215021) Experim ...
- 基于Matlab的声波信号处理,基于声卡和Matlab平台的语音信号增强处理系统
第29卷第6期 V01.29 No.6 企业技术开发 TECHNOLOGICAL DEVELOPMENT 0F ENTERPRISE 2010年3月 Mar.2010 基于声卡和Matlab平台的语 ...
- ML之LiR:基于编程实现简单线性回归案例
ML之LiR:基于编程实现简单线性回归案例 目录 LiR算法思路配图 编程实现简单线性回归案例 LiR算法思路配图 1.LiR输出结果 编程实现简单线性回归案例 结果显示
- AngularJS基于MVC的复杂操作案例
AngularJS基于MVC的复杂操作案例 <!DOCTYPE html> <html><head><meta charset="UTF-8&quo ...
- 《Matlab实用案例》系列Matlab从入门到精通实用100例案例教程目录(持续更新)
文章目录 1. 专栏简介 2. 专栏地址 3. 专栏目录 1. 专栏简介 2. 专栏地址 「 刘一哥与GIS的故事 」之<Matlab使用案例> 3. 专栏目录 [MATLAB统计分析与应 ...
- 基于matlab 宗晓萍,基于ADAMS和MATLAB的机械臂控制仿真
基于ADAMS和MATLAB的机械臂控制仿真 宗晓萍;李月月 [期刊名称]<微计算机信息> [年(卷),期]2009(000)035 [摘要]运用多体系统动力学分析软件ADAMS建立虚拟模 ...
- 崔华 oracle简历,2013数据库大会:崔华-基于Oracle的SQL优化案例分析
2013数据库大会:崔华-基于Oracle的SQL优化案例分析 崔华的新书即将出版,其数据库大会上的演讲也非常精彩,他的新书十分值得期待. 2013年中国数据库技术大会第二天的"Oracle ...
- 基于线性回归的股票预测案例
基于线性回归的股票预测案例 本次的案例使用的是股票数据,数据源从www.quandl.com 获取.本次案例主要是为了练习线性回归 pip install quandl 安装quandl库. 在使用的 ...
- AT32F437基于LVGL的桌面显示案例
AT32F437基于LVGL的桌面显示案例 示例目的 提供AT32F437基于LVGL V8的桌面显示案例. 注:本示例代码是基于雅特力提供的V2.x.x板级支持包(BSP)而开发,对于其他版本的BS ...
最新文章
- VS2005中,C#中跨线程访问控件问题解决方案
- 触发器before和after的区别
- linux 基础知识及命令总结
- 今天整理了一些老作品
- CTR深度学习模型之 DeepFM 模型解读
- 如何高效学习前端新知识,拓展视野,我推荐
- 自动化测试遇到的难点_自动化测试过程中遇到的问题主要有什么?
- 数据库-几个重要的数据库相关概念
- mac模式怎样构造在jsp中_mac下tomcat的配置和jdk的设置 jsp的初级知识
- python除法运算定律_除法竖式算法的原理是什么?
- CSS权威指南(1)
- java使用163邮箱完成发送邮件完成注册
- 人工智能就是计算机科学的英语,人工智能的英语解释
- vue项目实现百度离线地图开发
- Excel如何计算年龄
- 批量标准矢量shp转txt工具shp2txt、批量txt转shp矢量工具txt2shp(Arcgis之国土报备、预审报批、勘测定界、自然资源系统)
- AutoJs学习-传感器图像
- 10.创建一个日期类MyDate, 包含年year、月month、日day三个属性
- Zookeeper一致性级别分析,含爱奇艺,小米,腾讯,阿里
- 写字机结构---coreXY结构
热门文章
- php新浪微博 登录接口文档,qq登录,新浪微博登录接口申请过程中遇到的问题
- 1.9Hadoop插件
- Python函数判断素数并输出前五十个素数
- 努力学习,大学和他们说的不一样。
- 考研数据结构判断题整合
- CoLab - 图像人脸检测_框出人脸
- 实用分享 2017年最新发布 iod app 上架流程
- 火狐linux 32位,火狐浏览器32.0版本-Firefox(火狐浏览器)32.0版下载 v32.0官方版--pc6下载站...
- 如何使用CMD重置Windows 10中的网络设置
- 互联网架构正逐渐成为企业IT发展刚需