|
|
Line 113: |
Line 113: |
| * A possible causes for build failure is having files in your local source or build directory that are not listed in the module.mk files; these are not copied into the dist archive. | | * A possible causes for build failure is having files in your local source or build directory that are not listed in the module.mk files; these are not copied into the dist archive. |
| * (philip, confirmed by oheim) On my core i5 desktop system with a fast SSD, mxe-octave builds usually fails at libmng, suspectedly because of a race condition related to disk I/O. A way to get past this is by specifying "make nsis-installer JOBS=1", if required repeatedly (sometimes 5 or 6 times), interrupting the build in the next step/dependency once libmng has been built fine, and restarting with "make nsis-installer JOBS=<higher number>". As of Dec. 2015 it is only libmng that has this issue. | | * (philip, confirmed by oheim) On my core i5 desktop system with a fast SSD, mxe-octave builds usually fails at libmng, suspectedly because of a race condition related to disk I/O. A way to get past this is by specifying "make nsis-installer JOBS=1", if required repeatedly (sometimes 5 or 6 times), interrupting the build in the next step/dependency once libmng has been built fine, and restarting with "make nsis-installer JOBS=<higher number>". As of Dec. 2015 it is only libmng that has this issue. |
|
| |
| ==Installing requirements of MXE Octave==
| |
| MXE Octave requires a recent Unix system where all components as stated below are installed.
| |
|
| |
| ===Debian (GNU/kFreeBSD & GNU/Linux)===
| |
| aptitude install -R autoconf automake bash bison bzip2 \
| |
| cmake flex gettext git g++ intltool \
| |
| libffi-dev libtool libltdl-dev \
| |
| mercurial openssl libssl-dev \
| |
| libxml-parser-perl make patch perl \
| |
| pkg-config scons sed unzip wget \
| |
| xz-utils yasm autopoint zip
| |
|
| |
| On 64-bit Debian, install also:
| |
|
| |
| aptitude install -R g++-multilib libc6-dev-i386
| |
|
| |
| If you are using Ubuntu, then you can do <code>apt-get install foo</code> instead of <code>aptitude install -R foo</code>.
| |
|
| |
| On a fresh Linux Mint 16 x86_64, in addition to the above also install:
| |
|
| |
| sudo apt-get install libc6-dev-i386 gcc-multilib libgmp3-dev libmpfr4 libmpfr-dev
| |
| sudo apt-get build-dep gcc-4.8
| |
|
| |
| If not installed you will get error messages like "/usr/include/stdc-predef.h:30:26: fatal error: bits/predefs.h: No such file or directory" or "/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.8/libgcc.a when searching for -lgcc" when compiling ocaml-core.
| |
| The packages libgmp3-dev libmpfr4 libmpfr-dev libmpc-dev are needed for compiling the build-gcc.
| |
|
| |
| ===Fedora===
| |
| yum install autoconf automake bash bison bzip2 cmake \
| |
| flex gcc-c++ gettext git intltool make sed \
| |
| libffi-devel libtool openssl-devel patch perl pkgconfig \
| |
| scons yasm unzip wget xz
| |
| On 64-bit Fedora, there are [http://wiki.octave.org/Windows_Installer#Open_Issues_with_NSIS open issues with the NSIS] package.
| |
|
| |
| ===FreeBSD===
| |
| pkg_add -r automake111 autoconf268 bash bison cmake \
| |
| flex gettext git gmake gsed intltool libffi libtool \
| |
| openssl patch perl p5-XML-Parser pkg-config \
| |
| scons unzip wget yasm
| |
|
| |
| Ensure that /usr/local/bin precedes /usr/bin in your $PATH:<br>
| |
| For C style shells, edit .cshrc
| |
| setenv PATH /usr/local/bin:$PATH
| |
| For Bourne shells, edit .profile
| |
| export PATH = /usr/local/bin:$PATH
| |
|
| |
| On 64-bit FreeBSD, there are [http://wiki.octave.org/Windows_Installer#Open_Issues_with_NSIS open issues with the NSIS] package.
| |
|
| |
| ===Frugalware===
| |
| pacman-g2 -S autoconf automake bash bzip2 bison cmake \
| |
| flex gcc gettext git intltool make sed libffi libtool \
| |
| openssl patch perl perl-xml-parser pkgconfig \
| |
| scons unzip wget xz xz-lzma yasm
| |
| On 64-bit Frugalware, there are [http://wiki.octave.org/Windows_Installer#Open_Issues_with_NSIS open issues with the NSIS] package.
| |
|
| |
| ===Gentoo===
| |
| emerge sys-devel/autoconf sys-devel/automake \
| |
| app-shells/bash sys-devel/bison app-arch/bzip2 \
| |
| dev-util/cmake sys-devel/flex sys-devel/gcc \
| |
| sys-devel/gettext dev-vcs/git \
| |
| dev-util/intltool sys-devel/make sys-apps/sed \
| |
| dev-libs/libffi sys-devel/libtool dev-libs/openssl sys-devel/patch \
| |
| dev-lang/perl dev-perl/XML-Parser \
| |
| dev-util/pkgconfig dev-util/scons app-arch/unzip \
| |
| net-misc/wget app-arch/xz-utils dev-lang/yasm
| |
|
| |
| ===Mac OS X===
| |
| Install [http://developer.apple.com/xcode/ Xcode 4] and [http://www.macports.org/ MacPorts], then run:
| |
|
| |
| sudo port install autoconf automake bison cmake flex \
| |
| gettext git-core gsed intltool libffi libtool \
| |
| openssl p5-xml-parser pkgconfig scons \
| |
| wget xz yasm
| |
|
| |
| Mac OS X versions ≤ 10.6 are no longer supported.
| |
|
| |
| ===MingW===
| |
| Make sure to update and upgrade packages as some of the default versions of packages are too old to work correctly.
| |
| mingw-get update
| |
| mingw-get upgrade
| |
|
| |
| And then get required packages.
| |
| mingw-get install autoconf bash msys-bison msys-flex gcc gcc-c++ \
| |
| gcc-fortran gettext msys-m4 msys-make msys-sed \
| |
| libiconv msys-openssl msys-patch msys-perl \
| |
| msys-libarchive msys-unzip msys-wget msys-bsdtar
| |
|
| |
| You will also need to install Windows versions of Python and Ghostscript and ensure they are in visible in the PATH.
| |
|
| |
| ===OpenSUSE===
| |
| zypper install -R autoconf automake bash bison bzip2 \
| |
| cmake flex gcc-c++ gettext-tools git \
| |
| intltool libffi-devel libtool make openssl \
| |
| libopenssl-devel patch perl \
| |
| perl-XML-Parser pkg-config scons \
| |
| sed unzip wget xz yasm
| |
|
| |
| On 64-bit openSUSE, install also:
| |
| zypper install -R gcc-32bit glibc-devel-32bit \
| |
| libgcc46-32bit libgomp46-32bit \
| |
| libstdc++46-devel-32bit
| |
|
| |
|
| ==Trying out cross-built Octave on Linux through VirtualBox== | | ==Trying out cross-built Octave on Linux through VirtualBox== |