Octave for Microsoft Windows: Difference between revisions

Jump to navigation Jump to search
→‎Installers for Microsoft Windows: note automatic post-install behavior (7.2.0 EXE installer) and suggest an install directory
(→‎Pre-installed Packages: updated pkg list for 6.4.0)
(→‎Installers for Microsoft Windows: note automatic post-install behavior (7.2.0 EXE installer) and suggest an install directory)
(6 intermediate revisions by 3 users not shown)
Line 11: Line 11:
The easiest way to install GNU Octave on Microsoft Windows is by using [http://hg.octave.org/mxe-octave/ MXE] builds.  For the current release, both 32-bit and 64-bit installers and zip archived packages (.zip and .7z formats) can be found at https://www.gnu.org/software/octave/download.html under the Windows tab.  
The easiest way to install GNU Octave on Microsoft Windows is by using [http://hg.octave.org/mxe-octave/ MXE] builds.  For the current release, both 32-bit and 64-bit installers and zip archived packages (.zip and .7z formats) can be found at https://www.gnu.org/software/octave/download.html under the Windows tab.  


* For executable (.exe) installers: the user can simply run the downloaded file and follow the on-screen installation prompts.  It is recommended that the installation path does not include spaces or non-ASCII characters.  Shortcuts to the program will be created automatically.
* For executable (.exe) installers: the user can simply run the downloaded file and follow the on-screen installation prompts.  It is recommended that the installation path does not include non-ASCII characters.  The directory {{Path|%USERPROFILE%\GNU Octave\Octave-X.y.z}} is recommended to ease installing additional packages at a later date.  Shortcuts to the program will be created automatically and the post-install script will be run automatically.


* For the 7z/zip archives:  
* For the 7z/zip archives:  
# Extract the file content to a directory on the harddrive (such as {{Path|C:\Octave}}). Spaces or non-ASCII characters in the path are discouraged and may cause program errors.
# Extract the file content to a directory on the harddrive (such as {{Path|C:\Octave}}). Spaces or non-ASCII characters in the path are discouraged and may cause program errors.
# Manually create a shortcut to the {{Path|octave.vbs}} file in the main installation directory. (Right-click on the file, select 'Create Shortcut', and move the new shortcut to your desired location.)  
# Manually create a shortcut to the {{Path|octave-launch.exe}} file in the main installation directory. (Right-click on the file, select 'Create Shortcut', and move the new shortcut to your desired location.)  
# If a command-line only instance of Octave is desired, the user can create another shortcut as stated above, right-click on the shortcut, select Properties, and add <code>--no-gui</code> to the end of the Target field.
# If a command-line only instance of Octave is desired, the user can create another shortcut as stated above, right-click on the shortcut, select Properties, and add <code>--no-gui</code> to the end of the Target field.
# IMPORTANT: Run the {{Path|post-install.bat}} file before running Octave the first time to reduce plot delays due to the Windows font cache and make the pre-installed packages visible to the system.
# IMPORTANT: Run the {{Path|post-install.bat}} file before running Octave the first time to reduce plot delays due to the Windows font cache and make the pre-installed packages visible to the system.
# The exe installer prompts you to choose which Basic Linear Algebra Subprograms (BLAS) library to use, and creates a shortcut to a BLAS switcher program. The 7z/zip archives default to using [https://netlib.org/blas Reference BLAS].  [https://www.openblas.net OpenBLAS] is also available, and may be preferable for certain users. 7z/zip archive users wanting to change their BLAS library can manually run the switcher program located at {{Path|/mingw64/bin/blas_switch.exe}}.


* note: users who have problems running .vbs files due to local security policy or software can instead make a shortcut to the {{Path|octave.bat}} file located in {{Path|\mingw32\bin}} or {{Path|\mingw64\bin}}, depending on the version of Octave installed.  
* Note: versions before 7.1.0 used .vbs and .bat files to start Octave.  The {{Path|octave.bat}} file is still available in {{Path|\mingw32\bin}} or {{Path|\mingw64\bin}}, depending on the version of Octave installed, for use cases requiring it for startup.  


==Octave Packages==
==Octave Packages==
Line 37: Line 38:
   >> pkg list
   >> pkg list


The output for preinstalled global packages included with version 6.3.0 when installed into {{Path|C:\Octave}} is:
The output for preinstalled global packages included with version 7.1.0 when installed into {{Path|C:\Octave}} is:


     Package Name        | Version | Installation directory
     Package Name        | Version | Installation directory
     ---------------------+---------+-----------------------
     ---------------------+---------+-----------------------
                   audio  |  2.0.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\audio-2.0.3
                   audio  |  2.0.4 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\audio-2.0.4
        communications 1.2.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\communications-1.2.3
                biosig 2.4.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\audio-2.4.0
                control 3.3.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\control-3.3.1
        communications 1.2.4 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\communications-1.2.4
        data-smoothing 1.3.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\data-smoothing-1.3.0
                control 3.4.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\control-3.4.0
              database 2.4.4 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\database-2.4.4
        data-smoothing 1.3.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\data-smoothing-1.3.0
              dataframe 1.2.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\dataframe-1.2.0
              database 2.4.4 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\database-2.4.4
                  dicom 0.4.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\dicom-0.4.0
              dataframe 1.2.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\dataframe-1.2.0
              financial |  0.5.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\financial-0.5.3
                  dicom |  0.4.1 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\dicom-0.4.1
                  fits 1.0.7 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\fits-1.0.7
              financial 0.5.3 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\financial-0.5.3
     fuzzy-logic-toolkit  |  0.4.6 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\fuzzy-logic-toolkit-0.4.6
                  fits |  1.0.7 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\fits-1.0.7
                     ga  |  0.10.2 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\ga-0.10.2
     fuzzy-logic-toolkit  |  0.4.6 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\fuzzy-logic-toolkit-0.4.6
                 general  |  2.1.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\general-2.1.1
                     ga  |  0.10.3 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\ga-0.10.3
           generate_html  |  0.3.2 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\generate_html-0.3.2
                 general  |  2.1.2 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\general-2.1.2
               geometry  |  4.0.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\geometry-4.0.0
           generate_html  |  0.3.2 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\generate_html-0.3.2
                     gsl  |  2.1.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\gsl-2.1.1
               geometry  |  4.0.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\geometry-4.0.0
                   image  |  2.12.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\image-2.12.0
                     gsl  |  2.1.1 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\gsl-2.1.1
     instrument-control  |  0.7.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\instrument-control-0.7.0
                   image  |  2.14.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\image-2.14.0
               interval  |  3.2.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\interval-3.2.0
     instrument-control  |  0.7.1 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\instrument-control-0.7.1
                     io  |  2.6.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\io-2.6.3
               interval  |  3.2.1 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\interval-3.2.1
         linear-algebra  |  2.2.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\linear-algebra-2.2.3
                     io  |  2.6.4 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\io-2.6.4
                   lssa  |  0.1.4 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\lssa-0.1.4
         linear-algebra  |  2.2.3 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\linear-algebra-2.2.3
                   ltfat  |  2.3.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\ltfat-2.3.1
                   lssa  |  0.1.4 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\lssa-0.1.4
                 mapping  |  1.4.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\mapping-1.4.1
                   ltfat  |  2.3.1 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\ltfat-2.3.1
                 matgeom  |  1.2.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\matgeom-1.2.3
                 mapping  |  1.4.2 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\mapping-1.4.2
           miscellaneous  |  1.3.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\miscellaneous-1.3.0
                 matgeom  |  1.2.3 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\matgeom-1.2.3
                     nan  |  3.6.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\nan-3.6.0
           miscellaneous  |  1.3.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\miscellaneous-1.3.0
                 netcdf  |  1.0.14 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\netcdf-1.0.14
                     nan  |  3.6.1 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\nan-3.6.1
                   nurbs  |  1.4.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\nurbs-1.4.3
                 netcdf  |  1.0.14 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\netcdf-1.0.14
                     ocs  |  0.1.5 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\ocs-0.1.5
                   nurbs  |  1.4.3 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\nurbs-1.4.3
                 octproj  |  2.0.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\octproj-2.0.1
                     ocs  |  0.1.5 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\ocs-0.1.5
                   optim  |  1.6.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\optim-1.6.1
                 octproj  |  2.0.1 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\octproj-2.0.1
             optiminterp  |  0.3.6 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\optiminterp-0.3.6
                   optim  |  1.6.1 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\optim-1.6.1
             quaternion  |  2.4.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\quaternion-2.4.0
             optiminterp  |  0.3.7 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\optiminterp-0.3.7
               queueing  |  1.2.7 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\queueing-1.2.7
             quaternion  |  2.4.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\quaternion-2.4.0
                 signal  |  1.4.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\signal-1.4.1
               queueing  |  1.2.7 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\queueing-1.2.7
                 sockets  |  1.2.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\sockets-1.2.1
                 signal  |  1.4.1 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\signal-1.4.1
               sparsersb  |  1.0.9 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\sparsersb-1.0.9
                 sockets  |  1.3.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\sockets-1.3.0
                 splines  |  1.3.4 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\splines-1.3.4
               sparsersb  |  1.0.9 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\sparsersb-1.0.9
             statistics  |  1.4.2 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\statistics-1.4.2
                 splines  |  1.3.4 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\splines-1.3.4
                     stk  |  2.6.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\stk-2.6.1
             statistics  |  1.4.3 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\statistics-1.4.3
                 strings  |  1.2.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\strings-1.2.0
                     stk  |  2.7.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\stk-2.7.0
                 struct  |  1.0.17 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\struct-1.0.17
                 strings  |  1.2.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\strings-1.2.0
               symbolic  |  2.9.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\symbolic-2.9.0
                 struct  |  1.0.17 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\struct-1.0.17
                 tisean  |  0.2.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\tisean-0.2.3
               symbolic  |  2.9.0 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\symbolic-2.9.0
                     tsa  |  4.6.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\tsa-4.6.3
                 tisean  |  0.2.3 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\tisean-0.2.3
                   video  |  2.0.0 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\video-2.0.0
                     tsa  |  4.6.3 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\tsa-4.6.3
                 windows  |  1.6.1 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\windows-1.6.1
                   video  |  2.0.2 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\video-2.0.2
                 zeromq  |  1.5.3 | C:\Octave\octave-6.4.0-w64\mingw64\share\octave\packages\zeromq-1.5.3
                 windows  |  1.6.2 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\windows-1.6.2
 
                 zeromq  |  1.5.3 | C:\Octave\octave-7.1.0-w64\mingw64\share\octave\packages\zeromq-1.5.3
 
                                                                                         
    Package Name        | Version | Installation directory
    ---------------------+---------+-----------------------
                  audio  |  2.0.2 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\audio-2.0.2
        communications  |  1.2.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\communications-1.2.3
                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.3.0-w64\mingw64\share\octave\packages\data-smoothing-1.3.0
              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.3.0-w64\mingw64\share\octave\packages\dataframe-1.2.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.3.0-w64\mingw64\share\octave\packages\financial-0.5.3
                  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.3.0-w64\mingw64\share\octave\packages\fuzzy-logic-toolkit-0.4.6
                    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.3.0-w64\mingw64\share\octave\packages\general-2.1.1
          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.3.0-w64\mingw64\share\octave\packages\geometry-4.0.0
                    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.3.0-w64\mingw64\share\octave\packages\image-2.12.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.3.0-w64\mingw64\share\octave\packages\interval-3.2.0
                    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.3.0-w64\mingw64\share\octave\packages\linear-algebra-2.2.3
                  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.3.0-w64\mingw64\share\octave\packages\ltfat-2.3.1
                mapping  |  1.4.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\mapping-1.4.1
                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.3.0-w64\mingw64\share\octave\packages\miscellaneous-1.3.0
                    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.3.0-w64\mingw64\share\octave\packages\netcdf-1.0.14
                  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.3.0-w64\mingw64\share\octave\packages\ocs-0.1.5
                octproj  |  2.0.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\octproj-2.0.1
                  optim  |  1.6.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\optim-1.6.1
            optiminterp  |  0.3.6 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\optiminterp-0.3.6
            quaternion  |  2.4.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\quaternion-2.4.0
              queueing  |  1.2.7 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\queueing-1.2.7
                signal  |  1.4.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\signal-1.4.1
                sockets  |  1.2.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\sockets-1.2.1
              sparsersb  |  1.0.8 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\sparsersb-1.0.8
                splines  |  1.3.4 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\splines-1.3.4
            statistics  |  1.4.2 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\statistics-1.4.2
                    stk  |  2.6.1 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\stk-2.6.1
                strings  |  1.2.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\strings-1.2.0
                struct  |  1.0.17 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\struct-1.0.17
              symbolic  |  2.9.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\symbolic-2.9.0
                tisean  |  0.2.3 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\tisean-0.2.3
                    tsa  |  4.6.2 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\tsa-4.6.2
                  video  |  2.0.0 | C:\Octave\octave-6.3.0-w64\mingw64\share\octave\packages\video-2.0.0
                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.  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.
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.
Line 166: Line 117:
   >> pkg install package_file_name.tar.gz
   >> pkg install package_file_name.tar.gz


Note that all of the commands above will perform ''local'' or ''global'' package installs according to the user's Administrator access level.  E.g., if an update is found for a global package with a non-elevated user account, the updated version will be installed to the ''local'' package location, leaving the old version intact in the ''global'' package location.  This behavior can be changed by calling the install command with the {{Path|-global}} option. For example:
Note that all of the commands above will perform ''local'' or ''global'' package installs according to the user's Administrator access level.  E.g., if an update is found for a global package with a non-elevated user account, the updated version will be installed to the ''local'' package location, leaving the old version intact in the ''global'' package location.  This behavior can be changed by calling the install command with the {{Path|-global}} option. As of Octave 7.1.0 the {{Path|-global}} option also works with the {{Path|pkg update}} command. For example:
 
To install a global package to the latest version (requires write-access to the global-list location) you can use:


   >> pkg install -forge -global <package_name>
   >> pkg install -forge -global <package_name>


Note also that the update command does not take -local or -global options, and always performs an update according to the user's Administrator access level. As such if Octave was installed from a zip or 7z archive in a non-privileged account, 'pkg update' cannot be used to update global packages, they must be updated manually using 'pkg install'
  >> pkg update -global


Detailed instructions for installing individual Octave Forge packages are given at https://octave.sourceforge.io/packages.php.
Detailed instructions for installing individual Octave Forge packages are given at https://octave.sourceforge.io/packages.php.
==Calling Octave executables==
Some environment variables have to be set to correctly run Octave executables.  So, a user should not call any of the executables directly unless the necessary environment variables have been set up manually.
Instead, the {{Path|octave.vbs}} script in Octave's root installation folder or the {{Path|octave.bat}} script in the bin directory should be used.  Both scripts support starting the GUI (command line argument {{Path|--gui}}) or running Octave in CLI mode (command line argument {{Path|--no-gui}}).  The .vbs script opens the GUI by default.  The .bat script starts Octave in CLI mode by default.
The .vbs script returns immediately when Octave has started.  The .bat script returns when Octave finishes execution.
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=
=GNU Octave in MSYS2=
Line 200: Line 139:
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>.
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.
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), <code>octave-cli</code> (linked without Qt, i.e., only "fltk" and "gnuplot" graphics toolkits and no GUI), and the wrapper executable <code>octave</code> that dispatches to one of the former executables depending on the used command line switches. The Octave GUI can be started with <code>octave --gui</code> from MSYS2's <code>bash</code> shell, the command line interface (CLI) with <code>octave</code>.


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


*'''Maintainer:''' Marco Atzeri  
*'''Maintainer:''' Marco Atzeri  
*'''Latest release:''' 2020-02-26
*'''Latest release:''' 2022-01-06


*Latest packages:
*Latest packages:


:octave-5.2.0-1
:octave-6.4.0-1
:Its announce on cygwin mailing list [https://cygwin.com/ml/cygwin-announce/2020-02/msg00028.html]
:Its announce on cygwin mailing list [https://sourceware.org/pipermail/cygwin-announce/2022-January/010389.html]


:Octave Forge packages have each a cygwin package.
:Octave Forge packages have each a cygwin package.
:Its announce on cygwin mailing list [https://cygwin.com/ml/cygwin-announce/2017-01/msg00078.html]
:Its announce on cygwin mailing list [https://sourceware.org/legacy-ml/cygwin-announce/2017-01/msg00078.html]
: Full cygwin package list is available here [https://cygwin.com/packages/]
: Full cygwin package list is available here [https://cygwin.com/packages/]
: At 2017-04-06, 64 forge packages were available.  
: At 2017-04-06, 64 forge packages were available.  


*To install :  
*To install :  
:  run cygwin setup-x86.exe (for cygwin 32 bit) or setup-x86_64.exe (for cygwin 64 bit) and select them in the Math category.  
:  run  setup-x86_64.exe (for cygwin 64 bit) and select them in the Math category.  
:  All the package dependencies will be also installed.
:  All the package dependencies will be also installed.


Line 226: Line 165:


==Notes for cygwin==
==Notes for cygwin==
*When building from development source (default branch)
:    "make check"
:passes almost all the tests. Only, and not substantial, failures are:
:<syntaxhighlight lang="bash">
/pub/hg/octave/src/data.cc : 8 failures due to different handling of complex Inf on sort
/pub/hg/octave/src/syscalls.cc: 1 failure on fork. This disappears when octave is installed
/pub/hg/octave/scripts/sparse/svds.m: 1 failure due to test sensitivity on starting point. See
https://mailman.cae.wisc.edu/pipermail/octave-maintainers/2011-September/024715.html
</syntaxhighlight>


* To build GNU Octave from cygwin source package, you need to install "cygport" and the relevant development libraries
* To build GNU Octave from cygwin source package, you need to install "cygport" and the relevant development libraries
:<syntaxhighlight lang="bash">
:<syntaxhighlight lang="bash">
tar -xf octave-5.1.0-1-src.tar.xz  
tar -xf octave-6.4.0-1-src.tar.xz  
cygport octave.cygport almostall
cygport octave.cygport almostall
</syntaxhighlight>
</syntaxhighlight>
:see [https://cygwinports.github.io/cygport/ cygport documentation] for further info.
:see cygport documentation at /usr/share/doc/cygport/html/manual/toc_index.html for further info.


=General info=
=General info=
Anonymous user

Navigation menu