Octave for Microsoft Windows: Difference between revisions

Jump to navigation Jump to search
Change download link to ftpmirror to help distribute load
(Change download link to ftpmirror to help distribute load)
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
:''This article is about using pre-built installers of Octave for Windows; for instructions about building it, see [[Windows Installer]].''
:''This article is about using pre-built installers of Octave for Windows; for instructions about building it, see [[Windows Installer]].''


{{Note|Windows installers are available for the latest version of '''Octave ({{Release}}, released on {{Release Date}})''' from https://ftp.gnu.org/gnu/octave/windows/.}}
{{Note|Windows installers are available for the latest version of '''Octave ({{Release}}, released on {{Release Date}})''' from https://ftpmirror.gnu.org/gnu/octave/windows/.}}


Users are encouraged to use the latest version unless a specific feature or requirement warrants using an older version of the software. Version specific instructions and installation notes are provided below.
Users are encouraged to use the latest version unless a specific feature or requirement warrants using an older version of the software. Version specific instructions and installation notes are provided below.
Line 37: Line 37:
   >> pkg list
   >> pkg list


The output for preinstalled global packages included with version 6.2.0 when installed into {{Path|C:\Octave}} is:
The output for preinstalled global packages included with version 6.3.0 when installed into {{Path|C:\Octave}} is:
                                                                                           
 
     Package Name        | Version | Installation directory
     Package Name        | Version | Installation directory
     ---------------------+---------+-----------------------
     ---------------------+---------+-----------------------
                   audio  |  2.0.2 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\audio-2.0.2
                   audio  |  2.0.2 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\audio-2.0.2
         communications  |  1.2.2 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\communications-1.2.2
         communications  |  1.2.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\communications-1.2.3
                 control  |  3.2.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\control-3.2.0
                 control  |  3.3.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\control-3.3.1
         data-smoothing  |  1.3.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\data-smoothing-1.3.0
         data-smoothing  |  1.3.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\data-smoothing-1.3.0
               database  |  2.4.4 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\database-2.4.4
               database  |  2.4.4 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\database-2.4.4
               dataframe  |  1.2.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\dataframe-1.2.0
               dataframe  |  1.2.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\dataframe-1.2.0
                   dicom  |  0.4.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\dicom-0.4.0
                   dicom  |  0.4.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\dicom-0.4.0
               financial  |  0.5.3 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\financial-0.5.3
               financial  |  0.5.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\financial-0.5.3
                   fits  |  1.0.7 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\fits-1.0.7
                   fits  |  1.0.7 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\fits-1.0.7
     fuzzy-logic-toolkit  |  0.4.6 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\fuzzy-logic-toolkit-0.4.6
     fuzzy-logic-toolkit  |  0.4.6 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\fuzzy-logic-toolkit-0.4.6
                     ga  |  0.10.2 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\ga-0.10.2
                     ga  |  0.10.2 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\ga-0.10.2
                 general  |  2.1.1 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\general-2.1.1
                 general  |  2.1.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\general-2.1.1
           generate_html  |  0.3.2 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\generate_html-0.3.2
           generate_html  |  0.3.2 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\generate_html-0.3.2
               geometry  |  4.0.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\geometry-4.0.0
               geometry  |  4.0.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\geometry-4.0.0
                     gsl  |  2.1.1 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\gsl-2.1.1
                     gsl  |  2.1.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\gsl-2.1.1
                   image  |  2.12.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\image-2.12.0
                   image  |  2.12.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\image-2.12.0
     instrument-control  |  0.6.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\instrument-control-0.6.0
     instrument-control  |  0.7.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\instrument-control-0.7.0
               interval  |  3.2.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\interval-3.2.0
               interval  |  3.2.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\interval-3.2.0
                     io  |  2.6.3 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\io-2.6.3
                     io  |  2.6.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\io-2.6.3
         linear-algebra  |  2.2.3 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\linear-algebra-2.2.3
         linear-algebra  |  2.2.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\linear-algebra-2.2.3
                   lssa  |  0.1.4 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\lssa-0.1.4
                   lssa  |  0.1.4 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\lssa-0.1.4
                   ltfat  |  2.3.1 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\ltfat-2.3.1
                   ltfat  |  2.3.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\ltfat-2.3.1
                 mapping  |  1.4.1 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\mapping-1.4.1
                 mapping  |  1.4.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\mapping-1.4.1
                 matgeom  |  1.2.2 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\matgeom-1.2.2
                 matgeom  |  1.2.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\matgeom-1.2.3
           miscellaneous  |  1.3.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\miscellaneous-1.3.0
           miscellaneous  |  1.3.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\miscellaneous-1.3.0
                     nan  |  3.5.2 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\\nan-3.5.3
                     nan  |  3.5.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\nan-3.5.3
                 netcdf  |  1.0.14 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\netcdf-1.0.14
                 netcdf  |  1.0.14 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\netcdf-1.0.14
                   nurbs  | 1.3.13 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\nurbs-1.3.13
                   nurbs  |   1.4.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\nurbs-1.4.3
                     ocs  |  0.1.5 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\ocs-0.1.5
                     ocs  |  0.1.5 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\ocs-0.1.5
                  optim 1.6.1 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\optim-1.6.1
                octproj 2.0.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\octproj-2.0.1
            optiminterp 0.3.6 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\optiminterp-0.3.6
                  optim 1.6.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\optim-1.6.1
            quaternion 2.4.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\quaternion-2.4.0
            optiminterp 0.3.6 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\optiminterp-0.3.6
              queueing 1.2.7 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\queueing-1.2.7
            quaternion |  2.4.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\quaternion-2.4.0
                signal |  1.4.1 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\signal-1.4.1
              queueing |  1.2.7 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\queueing-1.2.7
                sockets |  1.2.1 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\sockets-1.2.1
                signal |  1.4.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\signal-1.4.1
              sparsersb |  1.0.8 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\sparsersb-1.0.8
                sockets |  1.2.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\sockets-1.2.1
                splines |  1.3.3 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\splines-1.3.3
              sparsersb |  1.0.8 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\sparsersb-1.0.8
            statistics |  1.4.2 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\statistics-1.4.2
                splines |  1.3.4 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\splines-1.3.4
                    stk 2.6.1 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\stk-2.6.1
            statistics 1.4.2 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\statistics-1.4.2
                strings 1.2.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\strings-1.2.0
                    stk 2.6.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\stk-2.6.1
                struct | 1.0.17 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\struct-1.0.17
                strings |   1.2.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\strings-1.2.0
              symbolic |   2.9.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\symbolic-2.9.0
                struct | 1.0.17 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\struct-1.0.17
                tisean 0.2.3 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\tisean-0.2.3
              symbolic 2.9.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\symbolic-2.9.0
                    tsa 4.6.2 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\tsa-4.6.2
                tisean 0.2.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\tisean-0.2.3
                  video  |  2.0.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\video-2.0.0
                    tsa  |  4.6.2 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\tsa-4.6.2
                windows |  1.6.0 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\windows-1.6.0
                  video  |  2.0.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\video-2.0.0
                zeromq  |  1.5.2 | C:\Octave\octave-6.2.0-w64\mingw64\share\octave\packages\zeromq-1.5.2
                windows  |  1.6.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\windows-1.6.1
 
                zeromq |  1.5.2 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\zeromq-1.5.2                                                                                            
Note that the included packages shown above are stored in the default ''global package location'' within the Octave installation folder.
Note that the included packages shown above are stored in the default ''global package location'' within the Octave installation folder.  If any 'local' packages were previously installed with another version of windows, they might also appear in the list at the local location.  It is recommended that any such packages be uninstalled and reinstalled to guarantee compatibility with the current version of octave.


If Octave was installed from a zip or 7z archive and you did not run the {{Path|post-install.bat}} file, you may not see any packages listed.  In that case you need to run:
If Octave was installed from a zip or 7z archive and you did not run the {{Path|post-install.bat}} file, you may not see any packages listed.  In that case you need to run:
Line 96: Line 97:


That will force octave to look for both ''local'' and ''global'' packages in the set locations to repopulate the list of available packages.  Note that  'local' packages always take precedence if the same package is present in both locations.
That will force octave to look for both ''local'' and ''global'' packages in the set locations to repopulate the list of available packages.  Note that  'local' packages always take precedence if the same package is present in both locations.
'''Note''': The Windows bundle includes a minimal version of Python for the symbolic package. That version of Python is not intended to be used for anything else. If you like to use Python for something different in Octave (e.g., for the pythonic package), install a full Python distribution and set the necessary environment variables (PYTHON, ...?).


===Package Installation and Update===
===Package Installation and Update===
Line 130: Line 133:


Alternatively, Octave can be started using the msys2 shell that can be started with {{Path|cmdshell.bat}} in Octave's root installation folder.
Alternatively, Octave can be started using the msys2 shell that can be started with {{Path|cmdshell.bat}} in Octave's root installation folder.
=GNU Octave in MSYS2=
[https://www.msys2.org/ MSYS2] is a collection of tools and libraries providing an easy-to-use environment for building, installing and running native Windows software. GNU Octave is available as a [https://packages.msys2.org/base/mingw-w64-octave package] in MSYS2.
The best (and recommended) way to use Octave on Windows is to use the provided installers (see above). But for some special requirements, the version of Octave packaged by MSYS2 might be the better solution. Those special requirements might include:
* Users might want to use e.g. Octave packages that depend on third party packages not included in MXE Octave.
* Users might need features of newer versions of packages that are included in an older version in MXE Octave.
* ...
MSYS2 follows a rolling release cycle. So, its packages are most likely more up-to-date than the packages included in Octave's installer for Windows.
It includes a (working) package manager (<code>pacman</code>) that provides the option to install a much wider range of packages than what can possibly be included in Octave's installer for Windows.
To use Octave in MSYS2, install the MSYS2 environment following [https://www.msys2.org/#installation their instructions]. At the <code>bash</code> shell (use e.g. "MSYS2 MinGW 64-bit" from the start menu), update the installation by <code>pacman -Syu</code>. After that, install a version of Octave that matches your environment (and the shell you are using), e.g. <code>pacman -S mingw-w64-x86_64-octave</code>.
This will install (among others), the main executables of Octave <code>octave-gui</code> (linked with Qt, i.e., including the "qt" graphics toolkit and the GUI) and <code>octave-cli</code> (linked without Qt, i.e., only "fltk" and "gnuplot" graphics toolkits and no GUI). The Octave GUI can be started with <code>octave-gui --gui</code> from MSYS2's <code>bash</code> shell.


=GNU Octave on [https://cygwin.com/ cygwin]=
=GNU Octave on [https://cygwin.com/ cygwin]=
216

edits

Navigation menu