Changes in BuildingWidelandsUnderWindowsNew
Revision Differences of Revision 10
# How to build Widelands with !MinGW64 on Windows ¶¶
This is currently a work in progress! ¶
¶
[TOC] ¶
¶
# Download files ¶
## Nuwen's !MinGW64 distro ¶
¶
Download the main distro from [http://nuwen.net/mingw.html](http://nuwen.net/mingw.html) and the MSYS2 installer: ¶
¶
* [mingw-1
* [MSYS2](http://repo.msys2.org/distrib/x86_64/msys2-x86_64-20150916.exe) from [MSYS2.io](https://msys2.github.io) ¶
¶
## SDL2 source packages ¶
* [SDL2](https://www.libsdl.org/release/SDL2-2.0.3.zip) ¶
* [SDL2_net](https://www.libsdl.org/projects/SDL_net/) ¶
* [SDL2_mixer](http://www.libsdl.org/projects/SDL_mixer/) ¶
* [SDL2_image](https://www.libsdl.org/projects/SDL_image/) ¶
¶
¶
## Additional libraries ¶
* [gzip](
* [libiconv](ftp://ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz) ¶
* [gettext](ftp://ftp.gnu.org/gnu/gettext/gettext-0.19.6.tar.gz) ¶
* [freetype](http://download.savannah.gnu.org/releases/freetype/freetype-2.6.2.tar.gz) ¶
* [ICU](http://download.icu-project.org/files/icu4c/56.1/icu4c-56_1-src.zip) ¶
¶
# Building all libraries ¶
¶
* Use the self-extracting installer of Nuwen's and extract the distro to *C:\\MinGW* ¶
* Install MSYS2 to *c:\\msys2* and follow their update steps! ¶
* Open the distro window with *C:\\MinGW\\open_distro_window.bat* ¶
* In this shell change the directory with "cd c:\\msys2" and call *msys2_shell.bat* to start MSYS2 ¶
¶
You are now in a linux like shell, so the command syntax is a bit different than normal windows commands ¶
¶
* Extract all source packages to *c:\\msys2\\home\\<username>\\* ¶
* Build each package with "./configure --build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --prefix=/c/MinGW && make install" ¶
* Gzip1.6 does not compile without these [two patches](https://gist.github.com/TinoM/5692d59573269e6d8018) ¶
* Download the patch files, save them in the gzip source folder and patch with ¶
* patch -d . -p1 < gzip_mingw64.patch ¶
* patch -d . -p1 < gzip_mingw64_2.patch ¶
* Libiconv and freetype have circular dependencies, so you should compile libiconv, then freetype and then libiconv again (make a distclean and a ./configure) ¶
¶
# Download CMake and Ninja ¶
¶
* Download [Ninja](https://github.com/
* Download [CMAKE](https://
¶
# Getting Widelands source code ¶
¶
# Building Widelands ¶
¶
We will build ninja in the normal distro window and not in the MSYS shell: ¶
¶
* Switch to the directory you'll want to build widelands in, e.g. *C:\\wl_build* ¶
* run CMAKE "cmake -G Ninja -DCMAKE_PREFIX_PATH=C:\\Mingw c:\\bzr\\widelands\\trunk" ¶
* Just call "ninja" to build now ¶