Octave

Mavericks
Mis apuntes sobre la instalación y uso de Octave.

Índice

  1. Instalación
  2. Uso
  3. Desinstalación

Instalación

En el caso de macOS, la instalación pue hacerse desde un administrador de paquetes como MacPorts o Homebrew, juntando los elementos para crear el instalador (que sería de lo que hecha mano Homebrew), mediante un bundle, o a partir del fuente (aunque para esto último, y como señala la página del proyecto, no hay mucha información al respecto).

En este caso la instalación aquí descrita se hace desde un bundle.

  1. Desde la página Octave.app, se descarga la imagen de disco (.dmg), correspondiente en ese entonces a la versión 4.4.1.
  2. Descargado, se procede a abrir el .dmg, que hará las comprobaciones adecuadas.

  3. Una vez montado la imagen de disco, la instalación procede como cualquier otra aplicación de macOS.
  4. La distribución de Octave no está firmada por lo que una advertencia,… y posterior autorización desde System Preferences será requerida.
  5. Finalmente, durante la primera activación algunas ventanas adicionales pueden aparecer.

Uso

MEX Files

Los archivos ejecutables de Matlab son conocidos como «mex files» (por Matlab EXecutables). El comando básico para construir un archivo mex es mkoctfile --mex o mex. El primer comando se puede usar desde Octave o desde la línea de comando. Para evitar problemas con el comando mex de Matlab, el uso del comando mex se limita dentro de Octave. Los archivos mex compilados tienen la extensión .mex.

Octave incluye una interfaz para permitir que los archivos mex heredados se compilen y utilicen con Octave. Esta interfaz también se puede usar para compartir código entre los usuarios de Octave y Matlab. Sin embargo, como los archivos mex exponen la API interna de Matlab y la estructura interna de Octave es diferente, un archivo mex nunca puede tener el mismo rendimiento en Octave que el archivo oct equivalente. Se recomienda que cualquier código nuevo se escriba con la interfaz de archivo oct.

Por ejemplo1, el código siguiente

#include "mex.h"

void
mexFunction (int nlhs, mxArray *plhs[],
int nrhs, const mxArray *prhs[])
{
mexPrintf ("Hello, World!\n");

mexPrintf ("I have %d inputs and %d outputs\n", nrhs, nlhs);
}

se compila con

mkoctfile --mex HelloWorld.c

con lo que se crea un archivo HelloWorld.mex que dentro de Octave es invocado:


octave:1> HelloWorld (1,2,3)
Hello, World!
I have 3 inputs and 0 outputs
octave:2>

Troubleshooting

+ La instalaciónen Ubuntu 18.04 reporta que no puede localizar los repositorios para descarga de componentes

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic

Get:19 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 libwayland-server0 amd64 1.16.0-1ubuntu1.1~18.04.1 [29.8 kB]
Err:20 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 libgbm1 amd64 19.0.2-1ubuntu1.1~18.04.1
404 Not Found [IP: 91.189.88.24 80]
Get:21 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 libwayland-client0 amd64 1.16.0-1ubuntu1.1~18.04.1 [23.8 kB]
Get:22 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 libxcb-xfixes0 amd64 1.13-2~ubuntu18.04 [9,352 B]
Err:23 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 libegl-mesa0 amd64 19.0.2-1ubuntu1.1~18.04.1
404 Not Found [IP: 91.189.88.24 80]

(ir-models) evasd@Winbuntu:~/EVA/01IR-Models/src$ sudo add-apt-repository ppa:octave/stable
[sudo] password for evasd:
Sorry, try again.
[sudo] password for evasd:

Desinstalación

De acuerdo con la página de Octave, la desinstalación del producto deberá lograrse con la eliminación del directorio y aplicaciones. Para la versión 3.x, en OS X 10.9, esto consistía en:


/usr/local/octave/3.8.0
/Applications/Octave-cli.app
/Applications/Octave-gui.app

Referencias

  1. John W. Eaton, «Getting Started with Mex-Files«, GNU Octave, apendix A, section A.2.1, web. Visited: 2019.09.17. URL: https://octave.org/doc/v4.2.0/Getting-Started-with-Mex_002dFiles.html#Getting-Started-with-Mex_002dFiles.

 

 


Twitter Wordpress eMail
© Todos los derechos reservados.
Dr. Eduardo René Rodríguez Avila
Creación: 2016.04.30
Última actualización: 2019.09.17
El contenido de este sitio puede ser copiado y reproducido libremente mientras no sea alterado y se cite su origen. Marcas y productos registrados son citados por referencia y sin fines de lucro o dolo. Todas las opiniones son a título personal del o los autores de éstas y, salvo sea expresado de otro modo, deben considerarse como registro y expresión de la experiencia de uso de aquello que es tratado. Para conocer más sobre la posición de privacidad y responsabilidad de lo que se presenta en este sitio web y como ha sido obtenido, consulte la declaración al respecto.