Qt/Qtopia/Qtopia Core/Qt-Embedded Explained

From Gumstix User Wiki
Revision as of 00:00, 10 April 2008 by 62.70.27.100 (Talk) (Qtopia)

Jump to: navigation, search

Introduction

There are several products by Trolltech with similar names. This page tries to clear up common confusion people have with these names.

Qt

Qt is a library & API for writing applications in. It is well-known for KDE, which is based on Qt.

Qt, and applications written using Qt, are cross-platform. This means you write your code once and just compile it for the platform you want. Currently, the supported platforms are: Windows, OS X, X11, WindowsCE & Embedded Linux.

On the Gumstix, there are 2 platforms of interest: X11 and Embedded Linux. If you want to run GTK+ applications and Qt applications at the same time, install the KDrive X Server and use Qt/X11. This is included as an OpenEmbedded recipe.

If all you want to do is run Qt applications, or write your own application with Qt, then Qt/Embedded Linux is probably what you want. This provides the complete Qt library & API, using its own, built-in window system (QWS). The binary size of Qt/X11 and Qt/Embedded Linux are roughly the same, but with Qt/Embedded Linux you don't need an X installation, greatly reducing the amount of flash needed. Qt/Embedded also works flawlessly on 18-bit LCDs and is generally faster and less memory-hungery than X. Note that before Qt 4.4.0, Qt/Embedded Linux was called Qtopia Core.

Qtopia

Trolltech also has a number of products under the name of Qtopia. These are suites of applications written by Trolltech using Qt/Embedded Linux. Qtopia comes in several "Editions", the most common of which is the Phone Edition.

Qtopia Phone Edition contains all the applications you would expect to see on a mobile phone, things like a launcher, dialer, web browser, contact list, etc. There are currently community efforts to get Qtopia Phone Eddition applications working with Qt/X11 instead of Qt/Embedded Linux to allow them to run on the OpenMoko phone.

Qtopia Platform contains all the common components across all the Qtopia products, things like the application launcher & device settings screen. For instructions on building Qtopia Platform, see the Qtopia platform howto.

Summary

Qt - A library you use in your applications
Qtopia - A suite of applications which use Qt
Qtopia Core - The old name of Qt/Embedded Linux
Qt/Embedded Linux - The Qt library with a built-in window system
QWS - The Qt Window System, part of Qt/Embedded Linux (Formally Qtopia Core)

Licencing

Qt is released under the GPLv2 and the GPLv3. This means if you write applications using Qt, you are legally obliged to publish the source code to your application. If you do not wish to release your application's source code to the public, you must purchase a commercial license from Trolltech before you start development.