Installation MSYS2

From GNUstepWiki
Jump to navigation Jump to search

Packages needed

Be very sure to install the packages correct for your architecture. The Guide refers to intel-64bit. Using the same procedure with the respective packages for 32bit failed currently. One package is msys, the other for mingw64

Be sure to work in the correct shell: for the 64bit example, launch and work inside MSYS2 MinGW 64-bit

Essential tools:

msys/make
mingw64/mingw-w64-x86_64-pkg-config 
msys/pkg-config
msys/tar


For GCC

mingw64/mingw-w64-x86_64-gcc 
mingw64/mingw-w64-x86_64-gcc-objc
msys/gcc-libs 9.1.0-2
mingw32/mingw-w64-i686-gcc-libs

For Clang + libobjc2

This will install clang and the latest gcc, since clang gets it's headers from that installation... pacman -S mingw-w64-x86_64-clang

Patches needed

shlwapi.h Fix

For a successful build, MSYS2 headers need to be patched. Please apply following proposed fix:

Build instructions

Make

Configure as:

./configure --with-layout=gnustep 

then, remember, to source the script from the respective MinGW shell version, e.g. the 64 bit is in:

. /mingw64/System/Library/Makefiles/GNUstep.sh

Base

Essential base libraries, headers included:

msys/libxslt-devel 1.1.34-1 (development) [installed]
msys/libxslt 1.1.34-1 (libraries) [installed]
mingw64/mingw-w64-x86_64-libxslt 1.1.34-2 [installed]
msys/libffi 3.2.1-3 (libraries) [installed]
mingw64/mingw-w64-x86_64-libffi 3.2.1-4 [installed]
msys/libffi-devel 3.2.1-3 (development) [installed]
msys/libxml2-devel 2.9.10-2 (development) [installed]
msys/libxml2 2.9.10-2 (libraries) [installed]
mingw64/mingw-w64-x86_64-libxml2 2.9.10-3 [installed]
msys/libgnutls-devel 3.6.11.1-1 (development) [installed]
msys/libgnutls 3.6.11.1-1 (libraries) [installed]
mingw64/mingw-w64-x86_64-gnutls 3.6.11.1-1 [installed]


If all dependencies are installed, no difficulties then:

./configure
make install

Gui

Essential gui libraries:

mingw64/mingw-w64-x86_64-libjpeg-turbo
mingw64/mingw-w64-x86_64-libtiff
mingw64/mingw-w64-x86_64-libpng
mingw64/mingw-w64-x86_64-giflib


Then installation is as simple as:

./configure
make install

Back / winlib

Essential back libraries:

mingw64/mingw-w64-x86_64-freetype

Then installation for the 'native windows' backend is as simple as:

./configure --enable-graphics=winlib
make install

You may want to try cairo if you prefer, install also cairo libraries before...

Back / cairo

Essential back libraries:

mingw64/mingw-w64-x86_64-freetype
mingw64/mingw-w64-x86_64-cairo

Then install like this...

./configure --enable-graphics=cairo
make install