1,852
edits
(→Remarks: Overhaul section.) |
(→Troubleshooting: Overhaul section.) |
||
Line 105: | Line 105: | ||
===Troubleshooting=== | ===Troubleshooting=== | ||
* The error message displayed by make is simply the last | * The error message displayed by <code>make</code> is simply the last lines of the log file. This may truncate the actual error message. Find the full error messages in the {{Path|<mxe-octave build>/log}} directory. | ||
* Sometimes running | * Sometimes running <code>make</code> a second time without changing anything will fix the problem. In particular, <code>autotools</code> rebuilds some files in the first call <code>make</code>, which may cause the second call of <code>make</code> to succeed. | ||
* If it is building Octave that failed, the source will be left in <mxe-octave build>/tmp-default-octave and it is possible to run "configure && make" in that directory. | * If it is building Octave that failed, the source will be left in {{Path|<mxe-octave build>/tmp-default-octave}} and it is possible to run "configure && make" in that directory. | ||
* The configuration will be for the target system, not your own. In particular, if you have not installed all of the packages that | * The configuration will be for the target system, not your own. In particular, if you have not installed all of the packages that mxe-octave installs, then your configuration will be different. However, some configuration variables will differ even if you have the same packages, and some compiler features may be available on the host system that are not available in cross-compile mode. | ||
* 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 {{Path|module.mk}} files; these are not copied into the dist archive. | ||
* | * Sometimes mxe-octave builds fail at "libmng". This may be due to a race condition related to disk I/O when using a fast SSD harddisk. 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 December 2015 it is only libmng that has this issue. | ||
==Trying out cross-built Octave on Linux through VirtualBox== | ==Trying out cross-built Octave on Linux through VirtualBox== |