1,855
edits
(Overhaul and shorten introduction. Point out, that you cannot build octave-mxe on MS Windows per se.) |
(→Step 1: Prepare mxe-octave: Update and describe the configure options more verbose.) |
||
Line 29: | Line 29: | ||
====Step 1: Prepare mxe-octave==== | ====Step 1: Prepare mxe-octave==== | ||
Clone the mxe-octave | |||
Clone the mxe-octave repository to some directory of your choice: | |||
where <name of mxe-octave build dir> is some other name than just the default "mxe-octave". | |||
Once downloaded, go into the <name of mxe-octave build dir> | hg clone https://hg.octave.org/mxe-octave <name of mxe-octave build dir> | ||
where <code><name of mxe-octave build dir></code> is some other name than just the default "mxe-octave". | |||
Once downloaded, go into the <code><name of mxe-octave build dir></code> subdirectory and do: | |||
./bootstrap | ./bootstrap | ||
{| class="wikitable" | |||
! "w64" (recommended) | |||
! "w64-64" | |||
! "w32" | |||
|-style="vertical-align:top;" | |||
| <pre style="min-width:330px;"> | |||
./configure \ | |||
--enable-devel-tools \ | |||
--enable-binary-packages \ | |||
--with-ccache \ | |||
--enable-octave=<octave version> \ | |||
--enable-windows-64 \ | |||
--enable-64 | |||
</pre> | |||
| <pre style="min-width:330px;"> | |||
./configure \ | |||
--enable-devel-tools \ | |||
--enable-binary-packages \ | |||
--with-ccache \ | |||
--enable-octave=<octave version> \ | |||
--enable-windows-64 \ | |||
--enable-64 \ | |||
--enable-fortran-int64 | |||
</pre> | |||
| <pre style="min-width:330px;"> | |||
./configure \ | |||
--enable-devel-tools \ | |||
--enable-binary-packages \ | |||
--with-ccache \ | |||
--enable-octave=<octave version> \ | |||
--disable-windows-64 | |||
</pre> | |||
|} | |||
The individual options have the following meaning (see also <code>./configure --help</code>): | |||
* <code>--enable-devel-tools</code>: Include gdb and an MSYS shell in the binary. | |||
* <code>--enable-binary-packages</code>: Cross-compile binary modules in [[Octave Forge]] packages. This saves time when installing them once the installation runs on Microsoft Windows. | |||
* <code>--with-ccache</code>: The usage of [https://ccache.dev/ ccache] may speed up repetitive compilation drastically. | |||
* <code>--enable-octave=<octave version></code>: Build a specific version of GNU Octave, which can be one of: | |||
** <code>release</code> use {{Path|src/release-octave.mk}}, download and build the latest GNU Octave release. | |||
** <code>default</code> use {{Path|src/default-octave.mk}}, build a self-created distribution tarball from the "default" development branch. | |||
** <code>stable</code> use {{Path|src/stable-octave.mk}}, build a self-created distribution tarball from the "stable" development branch. | |||
* <code>--enable-windows-64</code>: Build for 64-bit MS Windows. | |||
* <code>--enable-64</code>: Let Octave use 64-bit integers for indexing. | |||
* <code>--enable-fortran-int64</code>: Use 64-bit integers in Fortran code and especially in numerical library code. | |||
make all nsis-installer JOBS=<some number> | make all nsis-installer JOBS=<some number> | ||
Your author usually | |||
Your author usually uses <code>JOBS=7</code>. | |||
If you seriously want to work with gdb, also have --disable-strip-dist-files as configure option. However, in that case chances are that you cannot build an .exe installer anymore as it becomes too big for NSIS (that has a 2 GB installer file size limit) so instead of "make nsis-installer" you'll need to invoke | If you seriously want to work with gdb, also have --disable-strip-dist-files as configure option. However, in that case chances are that you cannot build an .exe installer anymore as it becomes too big for NSIS (that has a 2 GB installer file size limit) so instead of "make nsis-installer" you'll need to invoke | ||
make zip-dist <options> | make zip-dist <options> |