Mercurial > molko
annotate INSTALL.md @ 305:3675021fa6e5
make: add fakeroot support
author | David Demelier <markand@malikania.fr> |
---|---|
date | Sun, 27 Jun 2021 17:07:37 +0200 |
parents | a6d6497adb60 |
children | 363024b76da7 |
rev | line source |
---|---|
13
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 Molko's Adventure INSTALL |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 ========================= |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 Installation instructions. |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 Requirements |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 ------------ |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
25
diff
changeset
|
9 - C11 compliant compiler, |
89
30baadb6f6a2
core: add a panic_state in the adventure, continue #2484 @2h
David Demelier <markand@malikania.fr>
parents:
84
diff
changeset
|
10 - POSIX system (make, ar, shell), |
30baadb6f6a2
core: add a panic_state in the adventure, continue #2484 @2h
David Demelier <markand@malikania.fr>
parents:
84
diff
changeset
|
11 - [pkg-config][], Helper for libraries. |
25
0d5ecefcccd3
molko-map: reimplement using JSON as it is supported by tiled, closes #2448 @4h
David Demelier <markand@malikania.fr>
parents:
17
diff
changeset
|
12 - [Jansson][], JSON parsing library, |
13
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 - [SDL2][], Multimedia library, |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 - [SDL2_image][], Image loading addon for SDL2, |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 - [SDL2_ttf][], Fonts addon for SDL2, |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 - [SDL2_mixer][], Audio addon for SDL2. |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 Basic installation |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 ------------------ |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 Quick install. |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 $ tar xvzf molko-x.y.z-tar.xz |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 $ cd molko-x.y.z |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 $ make |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 # sudo make install |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 $ molko |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 |
90
a6d6497adb60
make: cleanup a bit and add appropriate dependencies
David Demelier <markand@malikania.fr>
parents:
89
diff
changeset
|
29 Available general make targets: |
a6d6497adb60
make: cleanup a bit and add appropriate dependencies
David Demelier <markand@malikania.fr>
parents:
89
diff
changeset
|
30 |
305
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
31 - `all`: (default): build only molko. |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
32 - `tools`: build tools (e.g. molko-map). |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
33 - `tests`: build tests and run them. |
90
a6d6497adb60
make: cleanup a bit and add appropriate dependencies
David Demelier <markand@malikania.fr>
parents:
89
diff
changeset
|
34 - `everything`: build molko, tools and tests without running them. |
305
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
35 - `fakeroot`: create a runnable local directory. |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
36 |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
37 Direct use in source tree |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
38 ------------------------- |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
39 |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
40 Examples and `mlk-adventure` executable searches for data into a specific |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
41 directory, when building those are not already discoverable because targets are |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
42 not already installed. |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
43 |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
44 It's still possible to build a fakeroot directory to run examples and |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
45 `mlk-adventure` without installing. To do this you simply need to use `fakeroot` |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
46 target. |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
47 |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
48 Note: you need rsync installed, in contrast to `install` with a `DESTDIR` |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
49 macro it only copies runtime data and avoid re-copying what didn't |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
50 change for a faster experience. |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
51 |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
52 $ make all examples |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
53 $ ./fakeroot/bin/mlk-adventure |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
54 (or) |
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
55 $ ./fakeroot/bin/example-action |
90
a6d6497adb60
make: cleanup a bit and add appropriate dependencies
David Demelier <markand@malikania.fr>
parents:
89
diff
changeset
|
56 |
13
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 Platform: Windows |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 ----------------- |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 On Windows, only [MSYS2][] is supported. |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 The code may compile on Microsoft Visual Studio but no support for it is |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 provided as it is not opensource and not standard compliant. |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
65 Once you have MSYS2 installed, simply install the following packages from the |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 appropriate MinGW shell prior to the chapter above. |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
67 |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 - *make* |
89
30baadb6f6a2
core: add a panic_state in the adventure, continue #2484 @2h
David Demelier <markand@malikania.fr>
parents:
84
diff
changeset
|
69 - *mingw-w64-x86_64-pkg-config* |
13
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
70 - *mingw-w64-x86_64-gcc* |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 - *mingw-w64-x86_64-SDL2* |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
72 - *mingw-w64-x86_64-SDL2_image* |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
73 - *mingw-w64-x86_64-SDL2_mixer* |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 - *mingw-w64-x86_64-SDL2_ttf* |
305
3675021fa6e5
make: add fakeroot support
David Demelier <markand@malikania.fr>
parents:
90
diff
changeset
|
75 - *mingw-w64-x86_64-jansson* (only for mlk-map/mlk-tileset tools) |
13
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
76 |
89
30baadb6f6a2
core: add a panic_state in the adventure, continue #2484 @2h
David Demelier <markand@malikania.fr>
parents:
84
diff
changeset
|
77 Note: replace `x86_64` with `i686` if you have a deprecated system or if you |
30baadb6f6a2
core: add a panic_state in the adventure, continue #2484 @2h
David Demelier <markand@malikania.fr>
parents:
84
diff
changeset
|
78 have issues while debugging (MinGW-w64 and/or gdb have known issues in |
30baadb6f6a2
core: add a panic_state in the adventure, continue #2484 @2h
David Demelier <markand@malikania.fr>
parents:
84
diff
changeset
|
79 this area). |
13
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
80 |
25
0d5ecefcccd3
molko-map: reimplement using JSON as it is supported by tiled, closes #2448 @4h
David Demelier <markand@malikania.fr>
parents:
17
diff
changeset
|
81 [Jansson][]: http://www.digip.org/jansson |
13
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
82 [SDL2]: http://libsdl.org |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 [SDL2_image]: https://www.libsdl.org/projects/SDL_image |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
84 [SDL2_ttf]: https://www.libsdl.org/projects/SDL_ttf |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
85 [SDL2_mixer]: https://www.libsdl.org/projects/SDL_mixer |
c188e9603faf
misc: add basic documentation files
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
86 [MSYS2]: http://www.msys2.org |
89
30baadb6f6a2
core: add a panic_state in the adventure, continue #2484 @2h
David Demelier <markand@malikania.fr>
parents:
84
diff
changeset
|
87 [pkg-config]: http://pkgconf.org |