Changes between Initial Version and Version 1 of Develop/Compiling/Cross/Win32


Ignore:
Timestamp:
May 7, 2017, 2:22:28 PM (7 years ago)
Author:
PulkoMandy
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Develop/Compiling/Cross/Win32

    v1 v1  
     1This is a guide about compiling GrafX2 for Windows using a Linux (Debian Strecth) system and mingw.
     2It may be useful for continuous integration, where Windows running CI slaves are not always an option.
     3
     4= Install dependencies =
     5
     6{{{
     7apt install \
     8        libz-mingw-w64 \
     9        libz-mingw-w64-dev \
     10        binutils-mingw-w64-i686 \
     11        gcc-mingw-w64-base \
     12        mingw-w64-common \
     13        mingw-w64-i686-dev \
     14        gcc-mingw-w64-i686 \
     15        mingw-w64-tools \
     16        win-iconv-mingw-w64-dev
     17}}}
     18
     19= Build more dependencies =
     20
     21Some of our dependencies are not available in Debian repos. So we must build them ourselves.
     22
     23== libpng ==
     24
     25{{{
     26wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.29.tar.gz
     27tar xvf libpng-1.6.29.tar.gz
     28cd libpng-1.6.29
     29./configure --host=i686-w64-mingw32 --prefix=/usr/local/cross-tools/i386-mingw32/
     30make
     31sudo make install
     32}}}
     33
     34== freetype ==
     35
     36{{{
     37wget http://download.savannah.gnu.org/releases/freetype/freetype-2.7.1.tar.gz
     38tar xvf freetype-2.7.1.tar.gz
     39cd freetype-2.7.1
     40./configure --host=i686-w64-mingw32 --prefix=/usr/local/cross-tools/i386-mingw32/
     41make
     42sudo make install
     43}}}
     44
     45== SDL ==
     46
     47{{{
     48wget http://libsdl.org/release/SDL-1.2.15.tar.gz
     49tar xvf SDL-1.2.15.tar.gz
     50cd SDL-1.2.15
     51./configure --host=i686-w64-mingw32
     52make
     53sudo make install
     54}}}
     55
     56== SDL-image ==
     57
     58{{{
     59wget https://www.libsdl.org/projects/SDL_image/release/SDL_image-1.2.12.tar.gz
     60tar xvf SDL_image-1.2.12.tar.gz
     61cd SDL_image-1.2.12
     62export PKG_CONFIG_PATH=/usr/local/cross-tools/i386-mingw32/lib/pkgconfig/
     63./configure --host=i686-w64-mingw32 --with-sdl-prefix=/usr/local/cross-tools/i386-mingw32
     64make
     65sudo make install
     66}}}
     67
     68== SDL_ttf ==
     69
     70{{{
     71wget https://www.libsdl.org/projects/SDL_ttf/release/SDL_ttf-2.0.11.tar.gz
     72tar xvf SDL_ttf-2.0.11.tar.gz
     73cd SDL_ttf-2.0.11
     74./configure --host=i686-w64-mingw32 --with-sdl-prefix=/usr/local/cross-tools/i386-mingw32/ --with-freetype-prefix=/usr/local/cross-tools/i386-mingw32
     75make
     76sudo make install
     77}}}
     78
     79
     80= Do the build =
     81
     82{{{
     83make WIN32CROSS=1
     84}}}
     85
     86The output is ../bin/grafx2.exe. It may need some extra DLLs. You can test it with wine32, it should run just fine.