Open main menu

Difference between revisions of "Compiling ScummVM/MinGW-w64"

Update the MinGW-w64 instructions
(Update the list of the needed libraries. With this libraries, I was able to compile the latest ScummVM codebase.)
(Update the MinGW-w64 instructions)
Line 18: Line 18:


==== Download and install the mingw-w64 compilation toolchain====
==== Download and install the mingw-w64 compilation toolchain====
In the MSYS2 terminal, type:
The MinGW packages are named mingw-<env>-<package>, where <env> is either x86_64 or i686, depending on your architecture (64-bit and 32-bit, respectively).
 
To create an i686 build environment, we need to first update the already installed packages. To do that, type the following in the MSYS2 terminal:
<source lang="bash">
<source lang="bash">
$> pacman -S mingw-w64-<env>-toolchain
$> pacman -Syu
</source>
</source>
where <env> is either x86_64 or i686, depending on your architecture (64-bit and 32-bit, respectively).
This command will fetch and install the packages needed for compiling, including (but not limited to) GCC 5.x, GDB, and libwinpthread-git.
==== Install make ====
ScummVM uses Makefiles to build the project. Makefiles are build configuration files that the compiler uses to compile, link and solve dependencies. "make" is the software that runs the Makefiles.
MSYS2 does not support make out of the box, but it has its own implementation. Install it by typing:


Then, type the following in the MSYS2 terminal:
<source lang="bash">
<source lang="bash">
$> pacman -S make
$> mkdir /mingw32
$> pacman -Sy base-devel git mingw-w64-i686-toolchain make mingw-w64-i686-SDL2 mingw-w64-i686-SDL2_net mingw-w64-i686-nasm mingw-w64-i686-flac mingw-w64-i686-libjpeg-turbo mingw-w64-i686-libogg mingw-w64-i686-libvorbis mingw-w64-i686-libmad mingw-w64-i686-libmpeg2 mingw-w64-i686-zlib mingw-w64-i686-libtheora mingw-w64-i686-faad2 mingw-w64-i686-libpng mingw-w64-i686-freetype mingw-w64-i686-fluidsynth mingw-w64-i686-curl mingw-w64-i686-SDL2_net mingw-w64-i686-winsparkle mingw-w64-i686-readline
</source>
</source>
These commands will fetch and install the packages needed for compiling, including (but not limited to) GCC 5.x, GDB, and libwinpthread-git.


=== Install the needed libraries ===
=== Install the needed libraries ===
In order to compile properly, ScummVM needs you to have certain libraries installed. All the libraries in the list can be installed with similar commands:
In order to compile properly, ScummVM needs you to have certain libraries installed. The command in the above section installs all of the needed packages automatically. All the libraries in the list can be installed with similar commands:
<source lang="bash">
<source lang="bash">
$> pacman -S mingw-w64-<env>-<library>
$> pacman -S mingw-w64-<env>-<library>
1,502

edits