MXE: Difference between revisions

530 bytes added ,  5 August 2019
Line 8: Line 8:


=== Example of compiling MXE-Octave ===
=== Example of compiling MXE-Octave ===
==== Preparation ====


# [[Windows_Installer#Installing_requirements_of_MXE_Octave|Install all requirements of MXE Octave]].
# [[Windows_Installer#Installing_requirements_of_MXE_Octave|Install all requirements of MXE Octave]].
# <code>hg clone https://hg.octave.org/mxe-octave/</code>
# Decide for an installation directory (e.g. {{path|~/mxe-octave}}).
# <code>cd ~</code>
# <code>hg clone https://hg.octave.org/mxe-octave mxe-octave</code>
# <code>cd mxe-octave</code>
# <code>cd mxe-octave</code>
# <code>./bootstrap</code>
# <code>./bootstrap</code>
# <code>./configure --enable-64 --enable-native-build --enable-pic-flag host_alias=gnu-linux --enable-openblas --enable-jit</code>
 
# <code>make all openblas</code>
==== Configuration ====
 
<code>./configure --enable-64 --enable-native-build --enable-pic-flag host_alias=gnu-linux --enable-openblas --enable-jit</code>
 
==== Build ====
 
<code>make all openblas JOBS=4</code> (adapt the value of the variable <code>JOBS</code> to your needs).
 
==== Replace reference BLAS by OpenBLAS ====
 
In general using the [https://www.openblas.net/ OpenBLAS] library results in faster matrix-vector operations compared to the reference BLAS library.
 
# <code>cd ~/mxe-octave/usr/lib</code>
# <code>cd ~/mxe-octave/usr/lib</code>
# <code>mv libblas.so libblas.so.reference</code>
# <code>mv libblas.so libblas.so.reference</code>
# <code>ln -s libopenblas.so libblas.so</code>
# <code>ln -s libopenblas.so libblas.so</code>
==== Run ====
# MXE-Octave will exist in {{path|~/mxe-octave/usr/bin}}
# MXE-Octave will exist in {{path|~/mxe-octave/usr/bin}}
# Add to your {{path|.bashrc}} file: <code>alias octave=~/mxe-octave-123456789/usr/bin/octave</code>
# Add the command <code>octave</code> as alias to your {{path|.bashrc}} file: <code>alias octave=~/mxe-octave/usr/bin/octave</code>
# Start MXE-Octave by typing <code>octave</code>.


=== Note for gnuplot ===
=== Note for gnuplot ===