No Cocoa Support For Qt 4.5 On Old Macs
One of the most touted features of Trolltech’s Qt 4.5 (beta released today) is the support for Cocoa framework and 64bit binaries on Mac OS X. However there is a catch that sadly is not widely advertised. The following is what you find when running the ./configure script with the –help switch:
-cocoa …………. Build the Cocoa version of Qt. Note that -no-framework and -static is not supported with -cocoa. Specifying this option creates Qt binaries that requires Mac OS X 10.5 or higher.
Basically, if you are not running the latest version of Mac OS X, you will not be able to take advantage of Qt 4.5’s Cocoa support. While I understand that the Trolls probably had reasons for not supporting older Macs, I do not like how they do not highlight this fact in their announcements. I did not see any mention about this little caveat on any of the release summaries. The only reference is at the bottom of this March 3th, 2008’s Trolltech Labs posts.
The reason that this annoys me, even though I am a loyal Linux user, is that I am currently in the middle of porting AMELIA to the Mac platform. AMELIA currently uses Qt for the user interface, but embeds a window created by the Irrlicht3D library for displaying the 3D model of the ATLAS detector. This approach works well on Window and Linux, but not so well on Mac OS X because Irrlicht uses Cocoa while Qt uses Carbon. When I read that Qt will now also use Carbon, I was quite excited because I though it would simplify my job. However I am currently using my girlfriend’s old Macbook, running OS X Tiger, for the development, so I cannot do any tests.
Anyways, it seems that you can do some pretty cool things with Qt 4.5’s Cocoa support. Just watch the following video published by the Qt team. The only problem I see is, how does this work with Qt’s dedication to “Cross-platform application framework for desktop and embedded development”? Cocoa seems to let you do quite a lot of things, but what if someone else is not using Carbon or not even a Mac OS X. I just hope that we won’t get a lot of Mac OS X only applications. 😉