LWN.net Logo

Imendio AB announces the GTK+ on Mac OS X port project (GnomeDesktop)

GnomeDesktop covers the release of GTK+ on the Mac OS X platform. "The GIMP toolkit (GTK+) matures to include yet another platform. This project aims to bring native GTK+ support to the Apple Mac OS X platform. The basic implementation is sponsored by Imendio AB and the work so far has been done by Anders Carlsson (of Imendio). This project means that another critical step is taken in the effort to spread this very successful library collection to all commonly used platforms."
(Log in to post comments)

Commodity GUI library is coming

Posted Nov 23, 2005 19:01 UTC (Wed) by proski (subscriber, #104) [Link]

The great thing about GTK+ is that is makes a good portable GUI library a commodity. It will be something that every OS must have, like every POSIX system has libc. The only price of using GTK+ should be learning it, and not restricting the project to a certain target OS, to a certain license or even to a certain the programming language, since C libraries can be wrapped for use in virtually any language.

Supporting Mac OS will make GTK+ more attractive to the developers, thus bringing more contributors and more eyeballs looking for bugs and ways to improve the library.

Commodity GUI library is coming

Posted Nov 23, 2005 22:22 UTC (Wed) by GreyWizard (guest, #1026) [Link]

All good points but KDE supporters would argue that Qt already makes a good portable GUI library a commodity and this library, not GTK+, should be the standard. C was once much more portable than C++ but that seems less and less relevant these days.

(Don't get me wrong, I'm a GTK+ partisan myself. But if you've got ammunition against this sort of reasoning I'd like to have it too.)

Commodity GUI library is coming

Posted Nov 24, 2005 0:54 UTC (Thu) by carlos (guest, #3066) [Link]

Gtk belongs to the community. Qt belongs to TT.

Commodity GUI library is coming

Posted Nov 24, 2005 2:03 UTC (Thu) by dlang (✭ supporter ✭, #313) [Link]

is this the same argument that saied that GTK should be used instead of QT becouse QT is under the GPL and GTK is under a less restrictive license that allows it to be used on closed-source applications?

Commodity GUI library is coming

Posted Nov 24, 2005 4:19 UTC (Thu) by bk (guest, #25617) [Link]

Qt, due to its nature, is also extremely monolithic and incorporates significant functionality (XML parsing, HTML and font rendering, etc) already present elsewhere in the free software landscape. GTK+ does what it is designed to do well, and integrates with other libraries transparently. Qt tries to be everything to everybody, ending up as a take-it-all-or-use-something-else OS-in-a-can library.

Commodity GUI library is coming

Posted Nov 24, 2005 4:52 UTC (Thu) by elanthis (guest, #6227) [Link]

But, on the other hand, a single common API is a lot easier for new coders to learn than a dozen+ APIs that each have their own naming and style conventions.

Personally, I've always wanted a nice clean C++ wrapper around GTK, libxml, a solid networking library, RPC, gnome-vfs/file-IO, sound, etc. Inti was supposed to become such a library, but sadly died off.

Commodity GUI library is coming

Posted Dec 1, 2005 9:51 UTC (Thu) by Felix.Braun (subscriber, #3032) [Link]

What is it you don't like about gtkmm? Mind you, I haven't looked into that library yet. I have just marked it as "library I'd be looking into, if I had to code a C++ project", so I am genuinley interested in your opinion.

Commodity GUI library is coming

Posted Nov 24, 2005 7:21 UTC (Thu) by macson_g (subscriber, #12717) [Link]

> Qt, due to its nature, is also extremely monolithic

No, it is not. As of Qt-4, it is splitted into smaller libraries, which allows you event to write console apps, using XML and networking facilities, but without linking all that GUI stuff.

Commodity GUI library is coming

Posted Nov 24, 2005 15:43 UTC (Thu) by khim (subscriber, #9252) [Link]

No, it is not. As of Qt-4, it is splitted into smaller libraries, which allows you event to write console apps, using XML and networking facilities, but without linking all that GUI stuff.

This makes zero difference: it still can not play well with other libraries. I can use expat or libxml with Gtk+ for XML parsing, imlib or libmagick for image processing and so on. With Qt - I can use some features or ignore them. That's all. No choice. It's Qt or nothing. The same is true for MFC and other C++ libraries - I do not know why but different C++ libraries usually dislike to work in tandem unless they share common ancestry. It's possible to do, yes, but quite painfull. That's why we have KDE on Qt side, yet GNOME, XFCE, etc on the Gtk+ side.

P.S. It's like Linux: it can use modules, true but it in no way makes it microkernel.

Commodity GUI library is coming

Posted Nov 25, 2005 16:40 UTC (Fri) by ringerc (subscriber, #3071) [Link]

I personally also dislike the amount of functionality being bundled into Qt. I'm particularly uncomfortable with it's poor-but-integrated XML support, and the Arthur graphics framework in Qt4.

That said, you can still use expat or libxml2 with Qt. That's what a number of Qt apps do, because the Qt XML support isn't great. As for mixing C++ libraries, the biggest problem areas in my experience are "utility" classes - the things everybody needs, but the standard doesn't provide or does badly. Like a decent unicode string class (not std::wstring) or signalling mechanism differences (template based signals/slots, idl/precompiler based signals/slots, callbacks). Despite these issues, it doesn't seem that big a deal, and the Boost project helps a lot.

Qt4 lets you use the non-GUI parts of Qt without the GUI parts. I'll be interested to see how far that goes in the other direction - for example, it'll be interesting to see how comfortably Cairo can be used (portably) within Qt.

Commodity GUI library is coming

Posted Dec 1, 2005 10:55 UTC (Thu) by nchip (guest, #13292) [Link]

The other side of the coin:

Gtk allow propiertary software makers to GTK use without contributing anything back. Qt mandates propiertary vendors to pay back something to developers of GPL'd toolkit..

I'm not saying it's only side of the issue, but TT gets far too much flak from, what, asking money from propiertary software writers???

Commodity GUI library is coming

Posted Nov 26, 2005 4:20 UTC (Sat) by proski (subscriber, #104) [Link]

Suppose I want to start a project and release it under a license other than GPL. Qt doesn't give me that choice unless I pay a significant amount of money. I don't think Trolltech would reimburse me if I eventually put the project under GPL.

As for C vs C++, the problem is not portability. The problem is that C++ has its own class model which has to be respected whether you program in Python, in Objective C or in Java. As somebody put it, you can use any language as long as it's C++.

Commodity GUI library is coming

Posted Nov 27, 2005 2:03 UTC (Sun) by rqosa (subscriber, #24136) [Link]

> Suppose I want to start a project and release it under a license other than GPL. Qt doesn't give me that choice unless I pay a significant amount of money.

Not quite true; you could use a GPL-compatible license (LGPL, BSD, etc.)

Commodity GUI library is coming

Posted Nov 27, 2005 21:59 UTC (Sun) by proski (subscriber, #104) [Link]

OK, maybe (I'm saying maybe because even if Trolltech says it's OK it may not always be). In any case no proprietary licence, not even shareware would be permitted. GTK+ would be great for shareware authors to "try and buy" the idea of free software. Qt requires more immediate committment either in terms of money or in terms of software license.

Commodity GUI library is coming

Posted Nov 27, 2005 22:30 UTC (Sun) by dlang (✭ supporter ✭, #313) [Link]

for a project that was started becouse the QPL was't free enough to satisfy people, it's really odd to see people arguing that it's better becouse it allows people to write propriatary code useing it.

Commodity GUI library is coming

Posted Nov 28, 2005 5:07 UTC (Mon) by proski (subscriber, #104) [Link]

Try looking up "commodity" in a dictionary of your choice. Besides, the history of Qt is hardly relevant for anyone choosing a GUI toolkit today.

Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds