由于实验环境要求,最近在 Ubuntu 18.04 上安装了 Matlab2018b , 这里简单记录过程。

   (1) 首先是获取对应的 Matlab2018b 的安装包,这里笔者是在一个外国的网站上获得的,网址为:https://downloadly.ir/software/engineering-specialized/mathworks-matlab-download/,看不懂网页内容时可以在页面空白处 右键 -> 翻译为英文 ( chrome ),之后即可根据页面上的链接下载对应的内容,注意页面附的链接会有些强制跳转的广告,在下载时可以将鼠标放置在目标链接上,右键 -> 复制链接地址 的方式直接获取下载地址。

  

   (2) 在上述界面上下载完整的五个 rar 压缩包,并对上述 rar 压缩包进行解压,只需通过命令指定解压的第一个压缩包,后续的压缩包会自动解压。这里通过 rar 命令进行压缩包的解压,默认条件下 ubuntu 系统并不支持 rar 的压缩方式,需要安装对应的 rar 程序进行解压。关于 rar 命令的更多介绍,可以参考 man rar 帮助和笔者的另一篇总结 Linux下文件的打包、解压缩指令——tar,gzip,bzip2,unzip,rar

    安装 rar 程序:

      sudo apt install rar    //安装 rar

    进行解压操作:

      rar x Mathworks_Matlab_R2018b_v9.5.0_Linux64.part1_Downloadly.ir.rar ~/Matlab2018    //将压缩包解压至用户主目录的 Matlab2018

   (3) 解压完成后,进入解压后的目录,会获得对应的两个 iso 文件和一个 Crack 文件夹。其中 Crack 文件夹中的 Readme.txt 文件记录了简单的安装过程。

    

   (4) 首先新建一个空的文件夹,之后将上述第一个 iso 文件挂载到新建的文件夹上进行操作。挂载完成后,上述目录下即为对应的安装执行程序。

      mkdir ~/matlab        //用户主目录下新建文件夹 matlab
  sudo mount -o loop MatlabR2018b_LinX64_disk1_Downloadly.ir.iso ~/matlab //将 iso 文件挂载在 ~/matlab 目录下

    这里需要注意,安装命令需在上述挂载目录之外执行,即需在 ~/matlab 目录之外执行安装,由于默认的matlab安装位置位于 /usr/local/ 目录下,在其中创建目录需要 root 权限。

      sudo ~/matlab/install        //执行安装程序

   (5) 安装时选择 Use a File Installation Key 选项,并同意使用协议,在之后的界面中输入之前 Crack 文件夹中 Readme.txt 文件中的安装秘钥即可。

    

    

    在后续的安装目录选择中,选择默认的安装目录,即可进入安装过程,会有进度条提示安装的进度。

    

   (6) 在安装完成一半后,安装向导会提示需要第二个 iso 文件。首先将第一个 iso 文件取消挂载,在文件资源管理器中选中挂载的目录 matlab ,右键 -> umount ,并确定取消挂载即可。

    

    之后将第二个 iso 文件挂载在相同的目录上,执行的命令与(4)中的 mount 命令一样,不过将 iso 文件换为第二个。挂载完成后选择 OK 继续执行安装过程。

   (7) 为了使用方便,这里安装 matlab-support 来对 matlab 进行支持,可以显示 Matlab 的图标和提供一些其他的功能。

      sudo apt install matlab-support    //安装 matlab-support

    安装过程中会要求指定 Matlab 的安装目录,也就是之前(5)中的安装路径。并要求对 Matlab 进行激活,这里选择离线激活并选中原 Crack 文件夹中的 license_standalone.lic 文件即可。

    

   (8) 完成 matlab-support 的安装后,还需要用 Crack 文件夹中的 bin 文件的内容替换原 Matlab 安装目录中的 bin 文件夹的内容。

      sudo cp -rvf R2018a/bin /usr/local/MATLAB/R2018b/        //将 Crack 文件夹下 bin 文件内容复制到 Matlab 安装目录下

   (9) 上述步骤完成后,用户已经可以通过 win + a 显示的应用界面中搜索得到对应 Matlab 应用的图标,点击图标即可运行。

  另注:上述安装过程完成后,笔者打开 Matlab 时,会报错"Cannot write to preference file "matlab.prf"  Check file permissions.",这是由于 Matlab 的安装过程通过 root 权限完成,故而所有的安装文件和配置文件的所有者均为 root。点击图标运行 Matlab 时,是以普通用户的权限运行的,故而会使得 Matlab 此时没有权限去写位于用户主目录下的 .matlab 文件的内容。一个可行的解决方法是将上述文件夹的所有者修改为当前用户,使得当前用户使用 Matlab 时具备写的权限。

      sudo chown -R user_name ~/.matlab    //修改上述目录的所有者为当前用户

  

  参考

    Ubuntu Matlab R2017a破解安装

    Linux MATLAB 2018a 安装教程及启动失败解决办法

  

  使用 Matlab 的遇到的问题

  在使用 Matlab 的 mex 进行编译时,报错 "cannot convert ‘const mwSize* {aka const long unsigned int*}’ to ‘const int*’ ...".由于使用网上公开的代码,故而程序本身无法正确编译的可能性较小,主要从环境的角度去解决问题。

  a.在公开代码中是否存在对应的如 readme.txt 之类的说明文档,指定了程序编译所需的环境配置、宏定义、参数等;

  b.在确定没有 a 的问题后,如果上述报错信息仍存在,则可能是系统本身环境的问题,如不同的系统版本、架构等问题导致的,在上述情况下,同样的报错多次出现,且均对应的是 mwSize 无法与 int 类型对应,猜测可能是不同系统环境下对应的类型实现不同导致的,这里的解决方法是在使用 mex 编译时使用兼容选项 -DMX_COMPAT_32.

Ubuntu 18.04 环境下安装 Matlab2018的更多相关文章

  1. protobuf ubuntu 18.04环境下安装

    (t20190518) luo@luo-All-Series:~/MyFile$ (t20190518) luo@luo-All-Series:~/MyFile$ (t20190518) luo@lu ...

  2. Ubuntu 18.04 环境下 kubernetes v1.16.2 单机部署说明

    一.安装环境 本次部署使用阿里云ECS 操作系统: Ubuntu  18.04 64位 实例规格: ecs.c6.large 2U4G 二.kubernetes 版本 k8s.gcr.io/kube- ...

  3. 虚拟机Ubuntu(18.04.2)下安装配置Hadoop(2.9.2)(伪分布式+Java8)

    [本文结构] [1]安装Hadoop前的准备工作 [1.1] 创建新用户 [1.2] 更新APT [1.3] 安装SSH [1.4] 安装Java环境 [2]安装和配置hadoop [2.1] Had ...

  4. Ubuntu 18.04版本下安装网易云音乐

    这是我迄今为止发现的最完美的解决方法,不用改任何东西,只需要安装然后打开即可,后台也有. 参考:http://archive.ubuntukylin.com:10006/ubuntukylin/poo ...

  5. Ubuntu 18.04 手动编译安装 ffmpeg

    ffmpeg 是一个由提供对视频.音频和其他多媒体流文件进行处理功能的库和程序构成的自由软件项目,其常被用于适用于不同格式的音频和视频的录影.转换和流处理等场合.这里记录在 Ubuntu 18.04 ...

  6. 记录在Ubuntu 18.04系统中安装Apache, MySQL和PHP环境

    虽然我们在Linux VPS.服务器安装WEB环境比较方便,可以选择面板或者一键包,但是有些我们需要深入学习的网友不会选择一键安装,而是会尝试编译安装.这样可以学到一些内在的技术.一般我们较为习惯选择 ...

  7. ubuntu 18.04 64bit下如何安装安卓虚拟机anbox?

    一. 安装snapd sudo apt-get install snapd 二. 安装adb sudo apt-get install adb 三. 安装必要的内核模块 wget https://la ...

  8. Ubuntu 12.04环境下配置Postgresql和phppgadmin

    Ubuntu 12.04环境下配置Postgresql 9.1 和phppgadmin 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/zjianb ...

  9. 在Ubuntu 18.04系统上安装Systemback的方法(抄)

    在Ubuntu 18.04系统上安装Systemback的方法 2018-12-26 21:39:05作者:林莉稿源:云网牛站 本文介绍如何在Ubuntu 18.04或者Ubuntu 18.10系统上 ...

随机推荐

  1. TP-LINK WR703N OpenWrt 无线配网历程

    ① 创建了两个 Interfaces,名字分别为 lan.wlan0 (可自行设定),一个负责连接 PPPoE,一个负责提供 AP 热点. ② 配置 wlan0 相关 ip 地址,该地址为无线网内网地 ...

  2. jquery的Layer弹出框操作

    在layer中,我们要先获取窗口的索引,然后再进行操作. var index = parent.layer.getFrameIndex(window.name); //获取窗口索引 $("# ...

  3. 显示屏display的API

    display是代表25个led阵列显示屏的对象,包括以下的功能方法 # 获取(x,y)灯的亮度. 从 0 (不亮) to 9 (最亮). display.get_pixel(x, y) # 设置(x ...

  4. Vue ----------- 了解, 展示json 数据

    Vue.js  是一套构建用户界面的渐进式框架. 优点: 与大型框架不同的是采用自底向上的增量开发的设计, 只聚焦于视图层,不仅易于上手,还便于与第三方库或既有项目整合 当与现代化工具链以及各种类库结 ...

  5. 解决:Java source1.6不支持diamond运算符,请使用source 7或更高版本以启用diamond运算符

    diamond运算符,指的是JDK1.7的一个新特性.Maven默认用的是JDK1.6去编译.所以需要配置成更高的版本,有以下几种解决办法: 1.在项目pom.xml中加入下面的配置即可 <pr ...

  6. typescript nodejs 依赖注入实现

    依赖注入通常也是我们所说的ioc模式,今天分享的是用typescript语言实现的ioc模式,这边用到的主要组件是 reflect-metadata 这个组件可以获取或者设置元数据信息,它的作用是拿到 ...

  7. axios捕获401 赋值token

    //捕获401 // http request 拦截器 axios.interceptors.request.use( config => { const token = localStorag ...

  8. 经实验验证,修正对using namespace std的认识

    备注①:name:符号.指的实体包括:变量.函数.类 备注②:认为全局命名空间也是一个包,在此称作 ROOT:: 或 global:: (这样就有了两个特别的包:一个是全局包,一个是std包.但对于编 ...

  9. 安装多个jdk导致eclipse打不开问题

    问题描述 本来使用的是jdk1.8,由于其他原因需要使用jdk1.6,在安装完jdk1.6后打开eclipse就会报错: Version 1.6.0_43 of the JVM is not suit ...

  10. java中创建线程的3种方法

    1.继承Thread类优点:可以直接使用Thread类中的方法,代码比较简单.缺点:继承Thread类之后不能继承其他类. 2.实现Runable接口优点:实现接口,比影响继承其他类或实现接口.缺点: ...