Re: gtk on win32



-------Original Message-------
 
Date: 29/03/2010 19:58:10
>
Can I use GTK and all its dependencies to develop Windows applications
> at production level?
>
The simple answer is "Yes".  I've spent nearly 20 years developing Windows apps the more conventional way (i.e. using MFC) but I recently switched to GTK+ for reasons of portability. I'd strongly recommend using the object oriented implementations such as glibmm, gtkmm etc but in general, I've found GTK+ to be perfectly usable for Windows apps. Certain things like XP themes don't really work (as others have pointed out) and it's a great shame that bug reports aren't dealt with more conscientiously. Having said that, actual bugs are relatively few in number and GTK+ does have its own theming model (although I'm not sure if it's implemented in the win32 version). After a year or so developing with GTK+ I'm torn between whether I prefer GTK+ or MFC. GTK+ probably has the edge - especially so if your apps will need to run on other platforms. Make no mistake though, it's conceptually very different from MFC and you might find it frustrating at first.
 
Another consideration is which compiler you're intending to use. GTK+ probably works best with minGW (although I've never used minGW, so that's just a guess). Personally, I use it with Visual C++ where (with care) it can be made to work quite acceptably. And VC++'s debugger is light years ahead of minGW's gdb. It's worth persevering with VC++ simply for its superior debugging. But if you're planning to use anything later than VC++6, expect to encounter some problems unless you're willing to rebuild GTK+ (and all it's dependencies) yourself. In my experience (I'm using VC++8) 'g_usleep()' seems particularly problematic for some reason and I avoid it like the plague. Everything else seems to work fine though. And VC++8 is a must if you'll be using STL. The standard template library simply didn't work in earlier versions of VC++. Hope that all helps.
 
John


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]