You are here

GTKmm 3.4.0 / MinGW 4.6.2 for Windows (32-bit)

Several people asked me how to setup a GTKmm 3 development environment under Windows (for newcomers : GTKmm is a C++ binding for GTK+ 3).

The difficulty is that, compiled with MinGW, GTKmm will necessarily use the libstdc++ library ; yet libstdc++'s ABI changed heavily between each recent versions of the compiler. That is to say, a binary library (.dll and .dll.a) compiled with version 4.5 will not be usable with 4.6, 4.7, and so on.

Hence my work-of-the-day, a clean developement environment for GTKmm 3 :

GTKmm 3.4.0 / MinGW 4.6.2 for Windows (32-bit)

gtkmm-3.4.0_mingw-4.6.2_(TARNYKO).exe (139 Mb)

PS1 : do not install the environment in a path containing spaces ("C:\Program Files" e.g.). You have been warned !

PS2 : to test the library, download this sample and compile it by typing compile_gtkmm3 gtkmm3test.cpp.

Comments

Thank you so much for this!

(originally posted by Anonymous)

You're welcome :-).

Cheers!

(originally posted by Daniel)

Hi. Thank you - this has been very helpful. However, I'd like to use a bit more of C++11 than is supported in gcc 4.6. MinGW is now shipping gcc 4.7.2, and I'd like to build the current gtkmm 3.x with that. I am wondering how you built this - do you use jhbuild, or do you have your own procedure (presumably scripted), or do you use some other system?

(I've been programming on *nix systems since the 1980's, but I'm pretty new to MinGW & MSYS.)

(originally posted by Chris MacGregor)

Hi Chris,

Own procedure here. I really haven't documented the pure gtkmm part, but if you are interested in building GTK+ from scratch, here you go. It's my fully scripted buildenv ; once you have the base C-gtk stack, building gtkmm on top of it should be trivial.

Thank you very much!

Would it be possible for you to provide only the compiled gtkmm library without the MinGW part? Or are there some neccessary dependencies?

Hi,
Not 100% sure, especially after all this time, but I seem to remember it works only with this version of MinGW (or to be more specific, this version of libsigc++). You may be lucky and manage to run a pre-compiled program against this version, but get errors if you try to recompile it yourself ; then you may try to replace the libsigc++ libraries, but then your g++ compiler will become mad... something like that.

It may have stabilized since 4.7, in which case building Gtkmm against it could generate more neutral/redistribuable binaries. You can always check if the last version from OpenSuse Factory works with your compiler.

I'd try it myself, but have no time yet.

Was breaking my head trying to get stuff to work till I came across your site. Thank you very much. Everything works fine. Will report if any problem regarding this build is encountered.

Hi Tarnyko,

this is a real life-saver, thank you for providing this package! I tried out X different ways to get my gtkmm based Linux application running under Windows. I was just about to give up, furious at myself that I went for the gtkmm3 instead of the pure gtk3 (or even QT), as I stumbled across this page. With a bit of tweaking, I managed to get my app running with your package!!! :)

Best regards, alex.

Hi Alex,

You're welcome ; very nice to know that it helped you :-) !

Add new comment

Filtered HTML

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.