File: README.Windows

package info (click to toggle)
adonthell 0.3.8-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 5,416 kB
  • sloc: cpp: 50,659; sh: 5,142; python: 3,307; makefile: 338; lex: 216; sed: 16
file content (153 lines) | stat: -rw-r--r-- 5,338 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153

                       Adonthell on Windows

This file contains additional information for compiling Adonthell under 
Windows for x86 and/or x64. For general compilation instructions refer 
to the INSTALL file. Even more details are found within the NEWBIE file.


Build Environment:
==================
The recommended way to compile Adonthell for Windows is to use the mingw64
distribution of the GNU Compiler Collection. Since Adonthell uses a build
system based on GNU Autotools, a unixish environment such as provided by
MSys2 is also required. So start by downloading the latest version from:

  https://sourceforge.net/projects/msys2/files/Base/x86_64/

For detailed installation instructions please refer to:

  https://github.com/msys2/msys2/wiki/MSYS2-installation

As an alternative, http://www.msys2.org/ also links to the download and
runs you through the installation with a number of screenshots.

Using the 64 bit version of MSys2 is recommended as it can create both 32bit
and 64bit binaries.


Dependencies:
=============
Once MSys2 has been installed, you will need to install a number of packages
through the MSys2 package manager (pacman) which are required by Adonthell.

The package names below are the 64bit variants and as such result in a 64bit
version of Adonthell. To create 32bit binaries, replace x86_64 with i686 in
the package names below. Install each package by typing

  pacman -S <package name>

The following packages are required:
  
  tar
  make
  mingw-w64-x86_64-gcc
  mingw-w64-x86_64-gettext
  mingw-w64-x86_64-pkg-config
  mingw-w64-x86_64-python3
  mingw-w64-x86_64-SDL2_mixer
  mingw-w64-x86_64-SDL2_ttf


Compiling Adonthell:
====================
After installing all the libraries and tools above, we're finally
ready to compile Adonthell. For this, make sure to exit the MSys2 shell
and open the mingw64 (or mingw32) environment instead. 

Extract both adonthell-0.3.x.tar.gz and wastesedge-0.3.x.tar.gz and
in each directory, run the usual commands:

    ./configure
    make
    make install

to compile and install Adonthell locally. You can now launch Adonthell
by typing

    adonthell-wastesedge


Distributable Package:
======================
To create a version of Adonthell that can be used outside the mingw
environment, or on a different computer running Windows, a set of scripts
are provided. Make sure that the dependencies listed above are installed
and the compile step worked. Then, in the adonthell-0.3.x directory, run

    ./make_windows_pkg.sh 

If all goes well, it will configure, build and install into a directory
called Adonthell/, including all the required DLLs not present in the
Windows System32 folder. Now only the actual game data is missing.

Change into the wastesedge-0.3.x directory and run

    make_windows_pkg.sh ../adonthell-0.3.x/Adonthell

(adjusting the location to the Adonthell directory as needed). This will 
configure, build and install Waste's Edge and make the package ready to 
use. You can now zip it up and transfer it to any other Windows system. 

To start the game, use the adonthell-wastesedge.bat script.


Installer:
==========
To make distribution of the Windows package a little more professional,
a .msi installer can be built once the steps above are complete.

This requires the WiX Toolset, downloadable from

    http://wixtoolset.org/

Make sure it is in your PATH, i.e.

    export PATH=$PATH:/C/Program\ Files\ \(x86\)/WiX\ Toolset\ v3.10/bin

(adjusting the location to the WiX bin directory accordingly)

Change into the wastesedge-0.3.x/win32 directory and run

    ./make_msi.sh ../../adonthell-0.3.x/Adonthell

(adjusting the location to the Adonthell directory as needed).

If all goes well, the installer will be created in the current directory.


Additional Notes:
=================
(1) In order to embed the correct icon in the Adonthell executable,
    the rcedit program needs to be present in the PATH. It can be
    dowloaded from

        https://github.com/electron/node-rcedit/tree/master/bin

(2) In order to keep the list of external DLLs included in the package 
    at a minimum, it pays to use custom compiled versions of SDL2_mixer, 
    Freetype and SDL2_tff. Configure those with the following flags

    Freetype   : ./configure --with-png=no --with-bzip2=no
    SDL2_mixer : ./configure --disable-music-ogg-shared

    In this case, make sure to install mingw-w64-x86_64-libvorbis and
    mingw-w64-x86_64-SDL2 instead of SDL2_mixer and SDL2_ttf.

(3) Due to bugs present in SDL 2.0.4, it is recommended to use version
    2.0.5 (once available), or to compile SDL from source as well, using
    at least revision 17e0ded12e6f:
    
        https://hg.libsdl.org/SDL/archive/17e0ded12e6f.tar.bz2
    
    To compile this using mingw, the following patch also needs to be
    applied
    
        https://bugzilla.libsdl.org/show_bug.cgi?id=3399

(4) Codesigning of the Adonthell executable and the MSI installer will
    be done automatically by the make_msi.sh script, provided you have  
    Microsofts signtool from the Windows Platform SDK in your PATH and 
    a suitable certificate added to the Windows certificate store.