7

I have tasted both Qt 4.x/5.x and GTKmm 3.x and I really like GTKmm over Qt.

Now I have just discovered that GTKmm 3.x doesn't offer a Windows porting, they also do not offer a Mac porting, basically I can't find nothing but libraries/sources/binaries for Linux. Apparently the Windows support ( I'm not sure about the situation for the Mac OS stuff ) was dropped in the 2.x era and it's still not-existing today.

I have planned to use GTK 3.x for specific reasons, especially for some new features introduced by the 3.x branch, so using GTK 2.x is an option off the table.

Now I ask: there is something new for the Windows and/or Mac support for GTK 3.x ? There is something ? even experimental projects ?

user1824407
  • 4,401
  • 4
  • 15
  • 20
  • 1
    Related: http://stackoverflow.com/questions/6006689/where-can-i-download-precompiled-gtk-3-binaries-or-windows-installer. – Frédéric Hamidi Dec 29 '12 at 08:27
  • @FrédéricHamidi thanks, i have already read that but that question is more than a year and a half old ... and this gives me no faith in this at all :( – user1824407 Dec 29 '12 at 08:33

4 Answers4

7

2018-12-18 Update:

GTK+ 3 on Windows has been supported through MSYS2 for years.

Old answer:

GTK for Windows is currently provided "as-is". What it means, basically, is that there are no GTK maintainer that use Windows, and those using Linux have enough work maintaining the Linux builds.

This means that any contribution for GTK 3 on Windows is welcome, some people are using it, but that's not ready for the masses because nobody steps up to do the work, which won't be done by magic overnight. So it's usable, but don't expect reactive maintenance.

As for the build, there's a french dude providing an (unofficial) GTK 3 installer for Windows.

lidaobing
  • 1,005
  • 13
  • 26
liberforce
  • 11,189
  • 37
  • 48
  • apparently there no user at all on other platforms, the Windows port it's not provided as-is, it doesn't even exists for the 3.x branch, GTK is great, but if is linux only it's pointless. – user1824407 Jan 02 '13 at 19:02
  • 1
    Not having an installer doesn't mean it doesn't exist. People can still build GTK from source for Windows, or use those unofficial binaries, and that's what some (few, I guess) people do. Having no maintainer dedicated to fix bugs specific to that platform, makes it impossible to be a "fully supported' platform. They are not ready to provide an installer, as that would mean more bug reports and nobody to fix them. And they can't tell developers that GTK 3 "somewhat works" on Windows. So while not easy, using GTK 3 on Windows should be possible. – liberforce Jan 03 '13 at 10:17
  • 1
    Here's for example a list of commits win32-specific. There's some activity, even if not huge: http://git.gnome.org/browse/gtk+/log/?qt=grep&q=win32 – liberforce Jan 03 '13 at 10:18
  • Using GTK/mm3 on Windows is far more than "possible" ;) Nowadays, MSYS2/MinGW64's package manager does everything for you and enables compiling/linking natively between GTK et al and the MSVCRT. I don't see the problem being posited in this thread; source is source, and as long as good toolchains exist, it can be compiled and run anywhere. I'd only be worried if GTK and co stopped being developed, not about whether there's an official installer... in fact, I'm almost glad there isn't one (a graphical one I mean), as by doing it through MSYS2 and its packaging system, it works just as in Linux. – underscore_d Apr 02 '16 at 01:24
7

No it isn't - at least when you want to be on the safe side for the future. The MacOSX and GTK ports are less then perfect and completely voluntarily which means by a program of this complexity and size they are not not active developed. And nobody cares that old features are implemented before new are added.

Almost 2 years since GTK3 released and there is still no official Windows binary distribution. And on one of the GNOME conferences there was an open discussion if GTK4 should be made Linux only. Well i guess they mean Linux/BSD - but Wayland is pure Linux at the moment and BSD do have a lack of developer for Desktop stuff.

This should be enough to scare any person with a serious program which requires real world investment away.

Also i strongly belive that cross platform GUI toolkits are a thing from the past. Abstract the GUI of your app and develop for every platform. With the success of the AppStores you will be forced more and more to use the native platform style. Your app will already be rejected by Apples AppStore if it looks to different. Windows is now enforcing WinRT. Be prepared that this will just be more important in the future.

So the way to go is WxWidgets which uses native widget sets. Skip GTK

Lothar
  • 12,537
  • 6
  • 72
  • 121
  • 1
    thanks, you know where i can read a realistic comparison between QT and WxWidgets ? I'm not interested in the "Qt extra" like data containers and extra-libs, i only want a GUI. Also what do you mean with " which uses native widget sets ", the other frameworks do not interface themself with the undelaying GUI ? – user1824407 Jan 08 '13 at 09:57
  • I think the only real realistic comparison is to compare the samples and API references and find out if your requirements and development styles are met. I didn't use WxWidgets but added my own 10KLines layer on top because i wanted to use XCodes interface builder (the best GUI Builder i've ever seen). – Lothar Jan 08 '13 at 15:46
  • Uses native widgets means they use the complete widget not just the Look (which is implemented by using the theming API with calls like "DrawButton"). The feel is often as important and you see with QT it feels nothing like native windows and the look is also questionable when you look at details. If all this matters depends on your application and it's target audience. – Lothar Jan 08 '13 at 15:50
3

As of right now, no.

Like Frédéric Hamidi said, see Where can I download precompiled GTK+ 3 binaries or windows installer? for more info.

Community
  • 1
  • 1
Christian Smith
  • 605
  • 3
  • 11
  • i have already found many resources about where to download stuff, I'm interested in knowing if there are real project for this; If i have to code in GTK my problem is the long term support not how to build a lib or where to download it. – user1824407 Jan 01 '13 at 07:37
  • well, like I said, no, there doesn't seem to be any real movement on this by the gtkmm devs. – Christian Smith Jan 02 '13 at 03:40
1

GTK on Mac has worked well for a long time and continues to work into the 3.x series:

https://live.gnome.org/GTK%2B/OSX/Building

You can also install GTK 3.x using MacPorts, but I don't know how well that works.

ptomato
  • 56,175
  • 13
  • 112
  • 165
  • GTK and GTKmm 3 are nowadays available via Homebrew and seem to work perfectly, at least for my program. – underscore_d Apr 02 '16 at 01:21
  • That works well for local development, but not (yet) for distributing your app as a Mac app bundle. – ptomato Apr 02 '16 at 06:55
  • I haven't tried that yet, to be fair. But do you mean that `gtk-mac-bundler` https://wiki.gnome.org/Projects/GTK%2B/OSX/Bundling somehow cannot be used with the Homebrew method? Are they dependent on the official OS X port in some way? – underscore_d Apr 02 '16 at 09:36
  • For `gtk-mac-bundler`, you need to have all your program's libraries in their own directory tree so that the bundler knows what to copy. There's no fundamental reason why it couldn't work with Homebrew's shared tree, but nobody's tried to get it to work yet as far as I know. – ptomato Apr 03 '16 at 03:31