commit 20119d4be755b6edafd90f8bef4171168bb7de66 Author: Georg Baum <b...@lyx.org> Date: Sun May 8 14:30:09 2016 +0200
Describe cross-compilation with MXE MXE is really a great project: It provides a cross-compilation environment for compiling windows binaries using mingw from any unix system, and includes lots of prepackaged libraries. The latter distinguishes it from the mingw cross-compilers packaged with some linux distros such as debian. I was even able to run the resulting lyx.exe using wine! diff --git a/INSTALL.Win32 b/INSTALL.Win32 index e36e559..b84159c 100644 --- a/INSTALL.Win32 +++ b/INSTALL.Win32 @@ -121,3 +121,31 @@ Compiling with GCC with MinGW64 + MSYS2 Environment using autotools make make install + +Cross-Compiling on unix with MXE using autotools +================================================= +1 Install MXE: http://mxe.cc + You can either install from sources, the generic .tar binaries or debian .deb packages. + Installing the following .deb packages will drag in all needed dependencies: + mxe-x86-64-w64-mingw32.shared-file + mxe-x86-64-w64-mingw32.shared-gcc + mxe-x86-64-w64-mingw32.shared-libiconv + mxe-x86-64-w64-mingw32.shared-qtimageformats + mxe-x86-64-w64-mingw32.shared-qtsvg + mxe-x86-64-w64-mingw32.shared-qtwinextras + Of course you can also use the static and/or 32bit versions. +2 Run the standard autotools install (Adapt paths and arguments accordingly) + ./autogen.sh + mkdir builddir-mingw + cd builddir-mingw + PATH="/usr/lib/mxe/usr/bin:$PATH" ../configure --host=x86-64-w64-mingw32.shared --with-qt-dir=/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5 --enable-qt5 --with-included-boost --with-included-hunspell --with-included-mythes --disable-debug --enable-optimization --prefix=/mingw64 + PATH="/usr/lib/mxe/usr/bin:$PATH" make + PATH="/usr/lib/mxe/usr/bin:$PATH" DESTDIR=/tmp/lyxinstall make install + This uses the paths from the 64bit shared MXE version installed from .deb packages. +3 If you want to run the resulting lyx.exe from the build directory using wine, + create symlinks for all needed .dlls: + cd builddir-mingw/src + ln -s /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/bin/*.dll . + ln -s /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/bin/*.dll . + wine64 lyx.exe +