forked from GNOME/gtkmm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
92 lines (67 loc) · 2.54 KB
/
README
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
This is gtkmm, the C++ API for GTK.
See http://www.gtkmm.org/
# Building
Whenever possible, you should use the official binary packages approved by the
supplier of your operating system, such as your Linux distribution.
## Building on Windows
See README.win32
## Building from a release tarball
Extract the tarball and go to the extracted directory:
$ tar xf gtkmm-@GTKMM_VERSION@.tar.xz
$ cd gtkmm-@GTKMM_VERSION@
It's easiest to build with Meson, if the tarball was made with Meson,
and to build with Autotools, if the tarball was made with Autotools.
Then you don't have to use maintainer-mode.
How do you know how the tarball was made? If it was made with Meson,
it contains files in untracked/gdk/gdkmm/, untracked/gtk/gtkmm/ and
other subdirectories of untracked/.
### Building from a tarball with Meson
Don't call the builddir 'build'. There is a directory called 'build' with
files used by Autotools.
$ meson --prefix /some_directory --libdir lib your_builddir .
$ cd your_builddir
If the tarball was made with Autotools, you must enable maintainer-mode:
$ meson configure -Dmaintainer-mode=true
Then, regardless of how the tarball was made:
$ ninja
$ ninja install
You can run the tests like so:
$ ninja test
### Building from a tarball with Autotools
If the tarball was made with Autotools:
$ ./configure --prefix=/some_directory
If the tarball was made with Meson, you must enable maintainer-mode:
$ ./autogen.sh --prefix=/some_directory
Then, regardless of how the tarball was made:
$ make
$ make install
You can build the examples and tests, and run some of the tests, like so:
$ make check
## Building from git
Building from git can be difficult so you should prefer building from
a release tarball unless you need to work on the gtkmm code itself.
jhbuild can be a good help
https://gitlab.gnome.org/GNOME/jhbuild
https://wiki.gnome.org/Projects/Jhbuild
### Building from git with Meson
Maintainer-mode is enabled by default when you build from a git clone.
Don't call the builddir 'build'. There is a directory called 'build' with
files used by Autotools.
$ meson --prefix /some_directory --libdir lib your_builddir .
$ cd your_builddir
$ ninja
$ ninja install
You can run the tests like so:
$ ninja test
You can create a tarball like so:
$ ninja dist
### Building from git with Autotools
$ ./autogen.sh --prefix=/some_directory
$ make
$ make install
You can build the examples and tests, and run some of the tests, like so:
$ make check
You can create a tarball like so:
$ make distcheck
or
$ make dist