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
|
Building glibmm on Win32
===========================
Currently, only both mingw (native win32) gcc compiler and MS Visual
Studio 2005 are supported. glibmm can be built with mingw32-gcc using
the gnu autotools (automake, autoconf, libtool). As explicitly stated
in the gtk+ for win32 distribution (http://www.gimp.org/win32/), the
gcc compiler provided by the cygwin distribution should not be used to
build glib/glibmm libraries and/or applications (see the README.win32
that comes with the gtk+ DLLs). This MIGHT cause conflicts between the
cygwin and msvcrt runtime environments.
1. Mingw
The mingw distribution which has been tested with this release is the
following :
* MinGW-2.0 as the base distribution.
The bare mingw distribution does not provide the necessary tools (sh, perl, m4
, autoconf, automake, ..) to run the provided configure script "as is". One
(currently non supported) solution is to use mingw in conjunction with msys,
which is readily available on the mingw website (http://www.mingw.org/).
The preferred method is to combine the cygwin distribution (for the unix tools
that were mentioned above) with mingw by making sure that the mingw
tools (gcc, ld, dlltool, ..) are called first.
First, make sure that you have working distribution of the native port
of both libsigc++-1.2.x and glib-2.0 on win32 (see
http://www.gimp.org/win32). If you can't compile a simple glib example
using gcc and `pkg-config --cflags --libs`, you should not even think
about trying to compile glibmm, let alone using precompiled libglibmm
DLLs to port your glibmm application !
The configure script can then be called using (as an example) the
following options
./configure --prefix=/target --build=i386-pc-mingw32 --disable-static
then
make
make check
make install
Because Dll support with libtool on the mingw32 platform is fairly recent, it
requires developement version of autoconf/automake and libtool, as provided by
the autotools-devel package in the cygwin distribution. Currently, this means
libtool : 1.5
automake : 1.7.9
autoconf : 2.59
IMPORTANT WARNING : the libtool scripts contained in the source distribution
of the library might not be recent enough to support dll creation. It will
create a static library instead. The main reason for this situation
comes from the fact that the gnome distribution uses the last stable
releases of the autotools, as opposed to their development (cvs)
versions. Therefore, it is recommended to always checked the version
of libtool that is being used when compiling libsigc++ on win32 by calling
libtool --version
once it has been created by the configure script.
If libtool is too old, it will be necessary to overwrite it using
libtoolize --force
from the cygwin autotools-devel package (usually located on
/usr/autotools/devel), followed by
aclocal
automake
autoconf
before running the configure script again.
In the future, a specially tuned source distribution along with a binary
package might be provided for mingw.
2. MS Visual Studio 2005
Open the glibmm.sln solution file in the MSVC_Net2003 directory. In
the Tools/Options panel, add the appropriate GTK+ include and lib
directories to the Projects and Solutions/VC++ directories. Build the
solution.
Important NOTE : to circumvent the C++ compiler bug described in this
bugzilla entry (http://bugzilla.gnome.org/show_bug.cgi?id=158040), it
is necessary to add '/vd2' to the list of compiler options when
building and/or using glibmm with Visual Studio 2005.
glibmm-2.8 will probably not work correctly with Visual Studio 7.1 or
below because of the aforementioned bug.
3. Glibmm methods and signals not available on win32
All glibmm methods and signals are available on win32.
|