| Line 37: | Line 37: | ||
== Choosing your environment == | == Choosing your environment == | ||
| - | MeeGo provides a flexible range of options for developers. To get ready for MeeGo development, you need | + | MeeGo provides a flexible range of options for developers. To get ready for MeeGo development, you first need to choose a Host: a physical machine plus operating system, where you will be doing your development work. Once you've made that choice, various SDK options become available, as outlined below. |
| + | |||
| + | === Windows (XP, Vista, 7) === | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
# '''Target''' | # '''Target''' | ||
#: This is comprised of a MeeGo Vertical OS plus Device (real or emulated). | #: This is comprised of a MeeGo Vertical OS plus Device (real or emulated). | ||
| Line 51: | Line 47: | ||
#:* MeeGo for handsets | #:* MeeGo for handsets | ||
#: The available Devices are: | #: The available Devices are: | ||
| - | |||
#:* QEMU | #:* QEMU | ||
#:* Real device (for example, real netbook or handset hardware) | #:* Real device (for example, real netbook or handset hardware) | ||
| Line 63: | Line 58: | ||
#:* [http://qt.nokia.com/products/developer-tools/ Qt Creator] supports Qt (including Qt Mobility, MTF, QML) | #:* [http://qt.nokia.com/products/developer-tools/ Qt Creator] supports Qt (including Qt Mobility, MTF, QML) | ||
#:* [http://www.forum.nokia.com/Develop/Web/9hy25fa/ WebSDK] supports WRT development | #:* [http://www.forum.nokia.com/Develop/Web/9hy25fa/ WebSDK] supports WRT development | ||
| + | #:* Other tool selection: if you have preferred tools for development, it may also be possible to use them to develop for MeeGo | ||
| + | |||
| + | === Linux (Fedora, Debian, Ubuntu, MeeGo) === | ||
| + | |||
| + | # '''Target''' | ||
| + | #: This is comprised of a MeeGo Vertical OS plus Device (real or emulated). | ||
| + | #: The available Verticals are: | ||
| + | #:* MeeGo for netbooks | ||
| + | #:* MeeGo for handsets | ||
| + | #: The available Devices are: | ||
| + | #:* Xephyr | ||
| + | #:* QEMU | ||
| + | #:* Real device (for example, real netbook or handset hardware) | ||
| + | # '''Framework''' | ||
| + | #: For MeeGo 1.1, two main frameworks are available to application developers: | ||
| + | #:* [[SDK/Docs/1.1/MeeGo SDK with Qt|Qt]] | ||
| + | #:* [[SDK/Docs/1.1/MeeGo_SDK_with_WRT|Qt Web Runtime (WRT)]] | ||
| + | #: Other alternatives are also available (for example, Python and Ruby code can run on MeeGo), but these are not recommended for application developers. | ||
| + | # '''Developer tools''' | ||
| + | #: You can choose to use one of the available integrated development environments (incorporating project tools, code editor, device simulator, debugger etc.), or use tools of your own choice: | ||
| + | #:* [http://qt.nokia.com/products/developer-tools/ Qt Creator] supports Qt (including Qt Mobility, MTF, QML) | ||
#:* Other tool selection: if you have preferred tools for development, it may also be possible to use them to develop for MeeGo | #:* Other tool selection: if you have preferred tools for development, it may also be possible to use them to develop for MeeGo | ||
This is a draft (2010-10-21)
This should incorporate content from MeeGo SDK Development Options
Contents |
MeeGo applications are written in C++, Web-technologies, or QML using tools provided by the MeeGo community. Currently, the main SDK is the MeeGo SDK, which allows developers to create native applications using Qt/C++ and Qt Quick. This SDK is based on the Qt Creator SDK, and contains support for Qt 4.7 and Qt Mobility 1.0.2 frameworks. An additional SDK, based on open-source technology, is provided by Nokia for WebRunTime (WRT) developers.
Both these SDKs integrate into the standard development process:
We take the image from www.meego.com/developers/Developer Story.
The MeeGo SDK contains a set of toolchains that allows a developer to create binaries for a range of devices from a single code base. The SDK packages several tools that support the simulation of MeeGo devices, so developers can create software without the need for an actual MeeGo device. Currently there are versions of the MeeGo SDK for popular development platforms such as Linux and Windows.
The WRT SDK permits web-technologies, such as JavaScript/HTML/CSS, to be used to create MeeGo applications. The applications themselves are rendered using WebKit technology. It is also possible to create hybrid applications by wrapping a WRT application with a Qt/C++ object. This SDK is also available for several development platforms.
The MeeGo SDK has support for on-device-debugging, as well as debugging within a MeeGo simulator. This is integrated into the IDE so developers can step through their code and, set breakpoints, and other standard debugging activities. The Web SDK also supports the debugging of WRT applications running within a browser.
The MeeGo SDK generates packages for deploying software to MeeGo devices. For example, when testing software on a MeeGo device from the MeeGo SDK, the software is packaged, sent to the device and installed. WRT applications for MeeGo can be packaged in the same format.
Once a MeeGo application has been packaged it can be distributed in different ways. One approach is to use the infrastructure supplied by the MeeGo project for the distribution of free, open-source applications; another approach is to submit the package to an application store.
MeeGo provides a flexible range of options for developers. To get ready for MeeGo development, you first need to choose a Host: a physical machine plus operating system, where you will be doing your development work. Once you've made that choice, various SDK options become available, as outlined below.