0 Installation et configuration de GNU Octave
et des packages Octave-Forge

Cette page s'adresse à toute personne (étudiant, enseignant, chercheur...) souhaitant installer sur sa machine le logiciel libre GNU Octave et ses extensions Octave-Forge qui constituent le seul environnement de calcul scientifique/numérique et visualisation entièrement compatible avec MATLAB ("clone" MATLAB).

Installation de GNU Octave ou MATLAB


6:35 min
Installation de GNU Octave ou MATLAB sur votre machine

Si vous êtes pressé, vous pouvez vous contenter de suivre les instructions d'installation ci-après qui sont mises en évidence sur fond jaune dans les chapitres respectifs relatifs à Linux, Windows ou macOS.

0.1 Avant-propos

Les étudiants peuvent généralement se procurer sur leur campus une licence personnelle "MATLAB Student Version" (DVD d'installation de MATLAB, Simulink avec quelques toolboxes, vendu au prix d'une centaine de CHF environ) permettant l'installation de MATLAB sur leur machine privée et l'utilisation dans le cadre de leurs études. À l'EPFL, cela est même possible sans bourse délier, l'école finançant la licence couvrant ce type d'usage académique. Mais pour les adeptes du "logiciel libre", GNU Octave représente actuellement la meilleure alternative libre/open-source à MATLAB, donc utilisable gratuitement et sans aucune restriction, permettant aussi de participer à sa communauté de développement.

Il existe encore d'autres logiciels libres dans le domaine du calcul scientifique, mais non compatibles avec MATLAB (autre syntaxe, donc code MATLAB non réutilisable tel quel). Ces alternatives sont mentionnées au chapitre "Qu'est-ce que MATLAB et GNU Octave ?".

GNU Octave se compose d'un noyau de base (Octave Core, https://www.gnu.org/software/octave/) ainsi que d'extensions implémentées sous la forme de packages (concept analogue aux toolboxes MATLAB) distribués via la plateforme SourceForge (https://octave.sourceforge.io/). Nous décrivons ci-après l'installation de GNU Octave sur les trois systèmes d'exploitation principaux :

Concernant l'évolution des différentes versions de GNU Octave, vous pouvez utiliser le menu News > Release Notes ou la commande news qui affichent les dernières "release notes". Vous pouvez également voir ici :

0.2 Installation de Octave sous GNU/Linux

0.2.0 Généralités concernant Octave sous GNU/Linux

Octave étant né dans le monde Unix, son installation sous Linux est très aisée. Il est en effet "packagé" pour la plupart des distributions Linux (paquets *.deb, *.rpm...), de même que pour Gnuplot (ancien backend graphique de Octave) ainsi que d'autres outils annexes, tous distribués via les "dépôts" (repositories) officiels de ces distributions.

De façon générale, les étapes de base d'installation de Octave sous Linux sont "classiques" et consistent donc à installer, au moyen du "gestionnaire de paquets" de votre distribution (apt sous Debian et dérivés tels que Ubuntu, yum sous RedHat et Fedora...), le noyau de base Octave (paquet octave et ses dépendances), puis les packages Octave-Forge dont vous avez besoin (généralement packagés sous le nom octave-package), et optionnellement gnuplot (qui vient en général automatiquement en dépendance de octave). Il est aussi possible de compiler/installer vous-même des packages Octave-Forge au sein même de Octave (voir chapitre "Packages Octave-Forge").

Pour un aperçu des portages Octave sur les différentes distributions Linux, voyez le wiki Octave. La distribution la plus utilisée dans notre école étant Ubuntu, c'est sur celle-ci que nous nous concentrons dans le chapitre qui suit.

0.2.1 Installation et configuration de Octave sous Ubuntu

Introduction

Il existe différentes approches d'installation de GNU Octave sous Ubuntu : S'agissant des packages Octave-Forge, vous trouvez la liste et description de ceux-ci sous https://octave.sourceforge.io/packages.php.

Installation basée sur les dépôts standards de Canonical

Selon la version de Ubuntu, en ne citant ici que ses releases actuellement supportés sur le long terme (LTS), on dispose des versions suivantes de Octave : Si vous avez besoin d'une version plus récente de Octave et ne voulez/pouvez pas upgrader votre Ubuntu, tournez-vous vers l'une des "méthodes alternatives" citées au chapitre précédent !
Installation en ligne de commande
Procédure d'installation de base sous Linux/Ubuntu :
  1. Installation du noyau de base Octave : sudo apt install octave
    Cela installe : Octave Core, Octave GUI, documentation au format PDF (package octave-doc), backends graphiques Qt/OpenGL, Gnuplot (package gnuplot-qt) et FLTK/OpenGL (redirigeant vers Gnuplot).
  2. Installation de la documentation Octave aux formats HTML et info : sudo apt install octave-htmldoc octave-info
  3. Pour installer ensuite les packages Octave-Forge dont vous avez besoin, nous vous recommandons ceux qui sont déjà "packagés" au niveau de l'OS par Debian/Canonical (c-à-d. offerts par les dépôts Canonical), l'avantage étant que les paquets dépendants (au niveau Linux et/ou Octave) seront automatiquement installés !
    Nous vous suggérons ainsi l'installation de la sélection de packages suivante en passant cette commande (en une seule ligne) : sudo apt install octave-communications octave-communications-common octave-data-smoothing octave-divand octave-fpl octave-general octave-geometry octave-image octave-io octave-linear-algebra octave-ltfat octave-ltfat-common octave-mapping octave-miscellaneous octave-missing-functions octave-msh octave-nan octave-netcdf octave-nurbs octave-octclip octave-optim octave-optiminterp octave-parallel octave-signal octave-sockets octave-sparsersb octave-specfun octave-splines octave-statistics octave-stk octave-strings octave-struct octave-tsa octave-zenity
Installation complémentaire pour pouvoir réaliser des Notebook Jupyter basés Octave :
  1. Il vous faut préalablement disposer de Jupyter, ce qui est le cas si vous avez procédé à l'installation d'un environnement Python complet selon ces instructions
  2. Il ne reste alors qu'à installer le noyau Octave pour Jupyter par la commande : pip3 install --user octave_kernel
Remarque concernant le packaging Octave Debian/Canonical : les commandes de base, à passer dans un shell Linux (et non pas dans la fenêtre de commandes Octave !), sont : Si le package Octave-Forge dont vous avez besoin n'est pas "packagé" par Debian/Canonical ou qu'il est disponible dans une version trop ancienne, vous pouvez récupérer son code source sur SourceForge et le compiler/installer vous-même au sein d'Octave. Pour cela il vous faut (pour plus de détails voir chapitre "Packages Octave-Forge") : Notez que mkoctfile est l'outil Octave qui vous permet de compiler et rendre accessibles à Octave des fonctions programmées dans les langages C++ (oct-files), C ou Fortran (mex-files).

Puis configuration de Octave sous Linux et autres remarques

  1. Si vous utilisez Octave GUI sous Linux et que votre espace de travail se trouve sur un serveur SMB/CIFS distant (c'est le cas dans les salles ENAC-SSIE sous Linux/Ubuntu), chaque fois que vous sauvegardez un script ou une fonction, une fenêtre de dialogue perturbante apparaît, indiquant "It seems that 'your_file.m' has been modified by another application. Do you want to reload it ? No Yes". Vous pouvez répondre ce que vous voulez (ça n'a aucune importance), mais pour éviter ce message vous pouvez modifier la préférence suivante : Edit > Preferences > Editor et activer l'option "Reload externally changed files without prompt".

  2. Si vous utilisez le backend Gnuplot, en définissant dans votre prologue Octave ~/.octaverc la commande : setenv('GNUTERM','wxt'), vous aurez une autre barre d'outils au haut des fenêtres graphiques !

  3. Ce point n'est utile que si vous utilisez Octave-CLI (Octave en mode commande dans une fenêtre terminal) : l'éditeur de M-files configuré par défaut étant emacs, si vous souhaitez plutôt utiliser Gedit (éditeur de texte standard sous GNOME), il vous faut :

0.3 Installation de Octave sous Windows

0.3.0 Généralités sur les différentes distributions Octave sous Windows

Octave a fait l'objet de nombreux "portages" sous Windows : d'abord sous l'environnement libre d'émulation Linux Cygwin, puis compilé sous Microsoft Visual Studio C++, ensuite avec l'environnement de compilation libre MinGW/gcc (Minimalist GNU for Windows) (2009), pour déboucher en 2014 sur un environnement de build unifié Octave MXE. C'est la raison pour laquelle on trouve plusieurs paquets et méthodes d'installation Octave.

L'état des différents portages binaires de Octave sous Windows est décrit sur le wiki Octave. La situation actuelle est la suivante (été 2021) :

  1. L'environnement de build cross-platform appelé Octave MXE a vu le jour en 2013 et débouché sur la première distribution binaire Octave 3.8 MXE pour Windows en 2014, puis 4.x dès 2015, et 5.x dès 2019. C'est celle-ci que nous vous recommandons et dont nous décrivons l'installation au chapitre suivant.

  2. Le portage "traditionnel" basé Cygwin que l'on installe ainsi (technique nécessitant du temps, des compétences et davantage d'espace-disque) : À moins que vous utilisiez déjà Cygwin, nous ne vous recommandons pas cette méthode.
Avec l'avènement de Octave MXE, le développement des 2 distributions Octave traditionnelles pour Windows, qui étaient diffusées via la plateforme open-source SourceForge.net, est arrêté depuis 2013. SourceForge se limite donc aujourd'hui à la distribution des packages Octave-Forge (ou voir ici).

0.3.1 Caractéristiques, installation et configuration de Octave 6.3.0 pour Windows

Caractéristiques

La version 6.3.0 d'Octave, datant du 11.7.2021, est un release mineur corrigeant les bugs de la dernière version majeure 6.1.0. Elle intègre les composants suivants :

Procédure d'installation

A) Procédure d'installation de base sous Windows :
  1. Téléchargez l'installeur depuis la page https://www.gnu.org/software/octave/download.html (onglet "Windows") en utilisant le lien nommé "octave-6.3.0-w64-installer.exe" (fichier de 325 MB), ou depuis ici, ou encore depuis notre site miroir.
    Notez qu'il est aussi proposé des distributions "portables" (archives .zip ou .7z) que nous vous déconseillons d'utiliser, car vous devriez alors notamment créer vous-même les raccourcis de lancement d'Octave et d'accès à la documentation. Il existe par ailleurs une version "w32" (32 bits), qui n'est plus d'actualité pour les machines modernes tournant généralement toutes Windows 64 bits, ainsi qu'une version spécifique "w64-64" pour des machines 64 bits disposant de plus de 32 GB de RAM.
  2. Exécutez cet installeur :
    • Acceptez la licence (GNU General Public License Version 3)
    • Install Options :
      - laissez activé "Install for anyone using this computer"
      - laissez activé "Create desktop shortcuts" (dépôt sur le bureau des 2 raccourcis de lancement "Octave CLI" et "Octave GUI")
      - laissez activé "Register .m file type with Octave" (à moins que vous ayez aussi installé MATLAB sur votre machine et souhaitiez lui donner la priorité pour l'ouverture de M-files)
      - menu "BLAS library implementation" : laissez activé "OpenBLAS"
    • Destination folder : nous vous suggérons de conserver C:\Program Files\GNU Octave\Octave-version
    • Cliquez ensuite sur [Install]
    • Au terme de l'installation, l'option "Run GNU Octave" lance Octave GUI, et l'option "Show Readme" ouvre le fichier README.html
  3. Le dossier de raccourcis "GNU Octave version" a en outre été mis en place dans le menu Démarrer. Il contient notamment :
    Installation complémentaire pour pouvoir réaliser des Notebook Jupyter basés Octave :
  1. Il vous faut préalablement disposer de Jupyter, ce qui est le cas si vous avez procédé à l'installation d'un environnement Python complet selon ces instructions
  2. Il ne reste alors qu'à installer le noyau Octave pour Jupyter ainsi : à documenter...
B) Packages embarqués dans cette distribution, installation de packages Octave-Forge supplémentaires : C) Définition du dossier de travail de base :

Quelques remarques concernant cette version de Octave

  1. Le backend graphique par défaut est Qt (ayant fait son apparition sous Octave 4.0, basé sur la librairie Qt et s'appuyant sur OpenGL).
    Si vous désirez utiliser plutôt FLTK/OpenGL ou Gnuplot, il faudra passer la commande graphics_toolkit('fltk') ou graphics_toolkit('gnuplot')

  2. Lorsque le répertoire de travail est la racine d'un lecteur Windows (par exemple Z:\), les M-files créés au cours de la session ne sont pas directement utilisables (considérés comme s'ils étaient invisibles), et il est nécessaire de relancer Octave pour qu'ils soient accessibles. Pour ne pas souffrir de cet inconvénient, travaillez donc toujours dans un sous-répertoire (ou plus profond) de lecteur (p.ex. Z:\exos_octave).

0.4 Installation de Octave sous macOS

0.4.0 Généralités sur les différentes distributions de Octave sous macOS

Sous macOS, Octave fait aussi l'objet de différents "portages" (voir le wiki Octave). On distingue ainsi les procédures suivantes :

0.4.1 Caractéristiques et installation du bundle Octave 6.2.0 pour macOS

Caractéristiques

Notez que ce bundle Octave nécessite que votre machine tourne macOS ≥ 10.14 !
Releasé le 16.4.2021, il intègrent notamment les composants suivants :

Procédure d'installation

Procédure d'installation sous macOS :
  1. Téléchargez l'image-disque de l'installeur depuis https://octave-app.org/Download.html (fichier *.dmg de 850 MB), ou depuis notre site miroir
  2. Ouvrez ce fichier-image, acceptez les différentes licences libres citées en cliquant sur [Agree]
  3. Faites un glisser-déposer de l'icône de l'application Octave sur l'icône de dossier Applications (dans lequel Octave occupera ~2.5 GB)
  4. Une fois l'installation terminée, vous pouvez éjecter/démonter l'image-disque, puis jeter le fichier-image Octave-version.dmg qui se trouve dans votre dossier de Téléchargements
  5. ATTENTION : si, la première fois que vous lancerez Octave par double-clic sur son icône dans le dossier Applications, vous recevez le message d'erreur "Impossible d'ouvrir Octave car le développeur ne peut pas être vérifié...", faites alors plutôt un ctrl-clic sur cette icône et choisissez Ouvrir dans le menu déroulant, puis acceptez...
    Installation complémentaire pour pouvoir réaliser des Notebook Jupyter basés Octave :
  1. Il vous faut préalablement disposer de Jupyter, ce qui est le cas si vous avez procédé à l'installation d'un environnement Python complet selon ces instructions
  2. Il ne reste alors qu'à installer le noyau Octave pour Jupyter ainsi : à documenter...

Quelques remarques concernant cette version de Octave

  1. Cette distribution ne contenant aucun package Octave pré-installé, si vous devez en installer, suivez la procédure décrite dans notre chapitre "Packages Octave-Forge", en utilisant typiquement les commandes : pkg list -forge (affichage de la liste des packages disponibles via SourceForge) et pkg install -forge package (installation locale du package spécifié). Si vous ne disposez pas de Apple Xcode, Octave vous demandera automatiquement de l'installer.
  2. L'usage des caractères accentués dans les scripts Octave est désormais possible !

0.4.2 Installation d'un éditeur de programmation pour macOS

Octave GUI intègre désormais un très bon éditeur. Si vous souhaitez cependant disposer d'un éditeur de programmation indépendant sous macOS, lisez les indications ci-après.

Installation de l'éditeur libre Atom

Atom est un éditeur de programmation et IDE récent qui est libre, multiplateforme et très évolutif, élaboré par la société GitHub Inc.

Si vous êtes intéressé par cet éditeur :

Installation de l'éditeur gratuit TextWrangler

Si vous êtes intéressé par cet éditeur :




Documentation © CC BY-SA 4.0 / / EPFL / Rév. 16-09-2021       ↵ Table des matières