Octave是一种解释类的编程语言,并且是GNU项目下的开源软件,与之相对是大家都非常熟悉的matlab,Octave和matlab语法基本上一致,都是用来快速做一些强大的矩阵运算来使用的,最大的不同是Octave是完全免费的,并且是开源的,这意味着任何人都可以直接去使用甚至修改源代码,但是matlab是商业软件,并且价格非常昂贵,高校和研究机构用的会多一些,并且付费的会有完善的技术支持,在国内通常可以非常方便的获取破解版本,但是Octave既免费又轻量,而且随着4.0之后界面和绘图功能都变得不断强大,这应该比安装笨重的matlab要让人愉快很多,并且绝大数情况下Octave已经具备了你需要的所有功能

  另外Octave正是因为矩阵运算的优势,可以把很多复杂的需要迭代的计算转化为矩阵或者向量来计算,这种转化往往可以将几十行代码精简为几行代码就能完成,并且内置的数值分析库的性能也比一般自己写要高,一般在数据分析,机器学习中可以先使用Octave快速做好模型,然后投入生产可以使用Python,Java或者C/C++来实现,并且各种语言都有对应的矩阵运算库,这个也不用自己去编写代码,所以使用Octave可以专注与模型与数据分析本身,而不用考虑过多关于计算的东西,所以这样效率才非常好,说了那么多下面是具体的下载以及安装过程:

  Octave的官网地址是:https://www.gnu.org/software/octave/ 进入之后点击首页的Download按钮可以快速看到下载的来源,对于Linux特定的发行版可以直接使用系统的包管理来安装,一步到位;也可以下载源码包编译安装,和安装一般软件通用,对于windows可以直接下载安装包来安装,

  windows安装包下载地址是:https://ftp.gnu.org/gnu/octave/windows/

  Linux源码包下载地址是:https://ftp.gnu.org/gnu/octave/

  注意:对于版本来说目前最新的是4.2.1,建议安装4.0.1往上的版本,但是一定不要安装4.0.0版本,因为这个版本存在比较严重的bug,而这个bug在4.0.1中得到修复

  对于windows下安装没什么好说的,下载安装包运行然后点点下一步就可以安装好了,安装之后桌面会出现两个快捷方式链接,一个是CLI启动之后是命令行形式,一个是GUI就是用户界面形式,不仅可以执行命令还可以作为代码编辑器使用,Octave的源代码是.m的格式;命令行比较快速稳定并且也可以直接绘图,所以通常我们都使用命令行

  对于Linux安装就是使用一般的编译步骤来安装即可,注意如果是纯命令行的Linux那么绘图命令和GUI都是不能使用的,不依赖图形界面都是无法启动的,但是仍然可以在命令行中使用大部分功能,这里下载的是最新的4.2.1的源码包,下面开始安装:

  释放安装包并进入源码目录: tar -xvzf octave-4.2..tar.gz && cd octave-4.2./

  执行 ./configure --help 可以查看所有的编译参数说明,这里直接全部默认安装到指定目录: ./configure --prefix=/usr/octave

  如果此时报缺少一些依赖包的error可以安装下面一些包:

yum -y install lapack64 lapack64-devel
yum -y install readline-devel

  安装之后,再执行: ./configure --prefix=/usr/octave 一般就正常了

  然后进行编译: make -j4

  编译过程很长,一般在半个小时到一个小时左右,耐心等待,编译完成后有一堆警告,大致意思是说缺少图形组件依赖,将无法使用绘图功能等,就是说界面不能用,因为我们系统是命令行,所以直接忽略即可,

  执行安装: make install

  安装之后这个解压的包连同源代码一块大约有3G左右,这个用不到了可以删除,然后进入/usr/octave安装目录,安装目录大约500M左右,安装目录下面的bin就是octave可执行文件的路径了,可以直接用来运行源文件也可以进入命令行执行指令

  此时执行: ./bin/octave-cli 就可以进入Octave命令行了,如下:

  

  另外如果细心会发现,执行 ./bin/octave 也可以进入命令行并且和上面一样,其实这是一个GUI启动程序,如果在有图形界面的系统上执行会启动GUI界面,但是当前是纯命令行的系统,所以执行的时候先打印了错误,然后就进入命令行界面了,所以用着和上面的octave-cli一样

  以上就是Octave的简单介绍和安装

Octave环境的安装的更多相关文章

  1. Octave 软件的安装

    每次安装软件都感觉是一种心痛的历程.下载安装,然后就跳出一堆的错误,之后就各种百度求救,然后就搞了大半天,有时候还搞不定. 最后,搞定的时候发现,原来这么简单,结果时间就这样浪费了,所以还是把这个过程 ...

  2. 【转】windows环境下安装win8.1+Mac OS X 10.10双系统教程

    先要感谢远景论坛里的各位大神们的帖子  没有他们的分享我也不能顺利的装上Mac OS X 10.10! 写这篇随笔主要是为了防止自己遗忘,同时给大家分享下我的经验. 本教程适用于BIOS+MBR分区的 ...

  3. 服务器运行环境(LNMP)安装说明

    服务器运行环境(LNMP)安装说明 因为公司需要一套流程标准,所以写了如下步骤. 先下载文件environment.tar,将文件上传到服务器. 使用命令解压文件,tar xvf environmen ...

  4. 在 windows 环境下安装 redislive

    这是一篇在 windows 环境下安装 redislive 的教程! 项目地址:https://github.com/nkrode/RedisLive 配置文档:http://www.nkrode.c ...

  5. windows环境下安装win8.1+Mac OS X 10.10双系统教程

    首先要感谢远景论坛里的各位大神们的帖子  没有他们的分享我也不能顺利的装上Mac OS X 10.10! 写这篇随笔主要是为了防止自己遗忘,同时给大家分享下我的经验. 本教程适用于BIOS+MBR分区 ...

  6. 在 xampp 环境下安装 laravel

    网上搜了很多教程,很多都是采用命令行安装的.但是对于web前端来说,根本就不知道在干吗! 于是,打算写一篇文章,来教后面的人如何在 XAMPP 环境下安装 laravel. 初步认识 XAMPP(Ap ...

  7. 【C#】VS2015开发环境的安装和配置(二)2016-08-03更新

    分类:C#.VS2015.WPF.ASP.NET MVC.Android.iOS.Unity3D: 更新日期:2016-08-03 按下面介绍的步骤安装即可. 一.安装JDK和Android SDK ...

  8. 【C#】VS2015开发环境的安装和配置(一)2016-08-03更新

    分类:C#.VS2015.WPF.ASP.NET MVC.Android.iOS.Unity3D: 更新日期:2016-08-03 一.简介 为了避免网上乱七八糟的过时介绍,避免误导初学者,这次把至2 ...

  9. Linux环境下安装Tigase XMPP Server

    Tigase是一种XMPP服务器,可以作为采用XMPP协议的各种IM(Instant Messeging)工具(如Pandion.Spark等)的服务器. 在Linux环境下安装Tigase的步骤如下 ...

随机推荐

  1. Meta对照表

    Http Content_type对照表: 文件扩展名 Content-Type(Mime-Type) 文件扩展名 Content-Type(Mime-Type) .*( 二进制流,不知道下载文件类型 ...

  2. OpenOCD Debug Adapter Configuration

    Correctly installing OpenOCD includes making your operating system give OpenOCD access to debug adap ...

  3. STM32F4 Alternate function mapping

    #define GPIO_AF0_MCO // MCO (MCO1 and MCO2) Alternate Function mapping #define GPIO_AF0_RTC_50Hz // ...

  4. iOS sqlite 使用事务操作数据库

    业务层代码: //将解析的更新人员数据批量同步到数据库 +(void)operateCompUsers:(NSMutableArray*)operateCompUsers { sqliteHelper ...

  5. 实现iOS长时间后台的两种方法:Audiosession和VOIP

    http://www.cocoachina.com/applenews/devnews/2012/1212/5313.html 我们知道iOS开启后台任务后可以获得最多600秒的执行时间,而一些需要在 ...

  6. libcurl断点下载遇到的问题

    最近游戏把资源(图片.配置.lua)的加载.更新全部改了 ,加载其实还好,就是不走之前的zip解压方式.   以前的大体流程: 下载 –> 启动 –> 解压 –> 更新 –> ...

  7. 多个so中模板单例的多次实例化

    在Android打包项目时,发现登录功能不能使用了,logcat中也没发现什么问题,最后一行一行log定位到了问题.原来是一个so文件中的构造函数被初始化二次!   这个单例是通过继承模板来实现的(暂 ...

  8. Android安装和设置的方法

    问题:gradle project sync failed 1.进入C:\Users\自己的用户名\.gradle\wrapper\dists\gradle-1.12-all\2apkk7d25mia ...

  9. Binary Search Tree 以及一道 LeetCode 题目

    一道LeetCode题目 今天刷一道LeetCode的题目,要求是这样的: Given a binary search tree and the lowest and highest boundari ...

  10. Dump dynamic object in LinqPad

      Just like: dynamic paper = MockPaper(); LINQPad.Extensions.Dump(paper); //paper.Dump(); Use LINQPa ...