Meego Wiki
Views

SDK/Docs/1.2/MeeGo SDK 1.2 Preview

From MeeGo wiki
< SDK | Docs | 1.2(Difference between revisions)
Jump to: navigation, search
(categorise)
 
(28 intermediate revisions not shown)
Line 1: Line 1:
-
'''This page under construction at this moment.  Contact Bob if you have questions.  ETA:  9pm PDT'''
 
-
 
== MeeGo SDK 1.2 Preview (with Tablet) ==
== MeeGo SDK 1.2 Preview (with Tablet) ==
 +
This page describes how to use the MeeGo SDK 1.2 Preview.  It contains support for the recently released tablet images.
 +
 +
MeeGo applications can be written using Qt (a rich C++ application framework) or Qt Quick (a Javascript-like declarative language). The MeeGo SDK includes Qt Creator IDE with GUI builder to enable streamlined development. It is currently available for use on Linux or Windows workstations as shown below.  The MeeGo SDK creates a virtual environment on your workstation that replicates direct development on a MeeGo OS-based system [http://meego.com/developers/meego-application-development-cycle (More...)]
-
This tutorial describes how to use the MeeGo SDK 1.2 Preview.  It contains support for the recently released tablet images.
+
=== Prerequisites ===
 +
'''Hardware'''
 +
* Any reasonably modern IA hardware.  For systems where the graphics or CPU virtualization are limited a faster system will be needed to use the virtual machine.
 +
* Systems known to work: Intel Core 2 Quad CPU, Q8200, i5 or i7 processor-based systems.
-
=== Overview ===
+
'''Software:'''
 +
* Windows XP w/SP3 and Windows 7 (32-bit systems can run virtual machine.  64-bit systems can use SDK but will need a device to run/debug)
 +
* Fedora 12, 13 (14 very soon); Ubuntu 10.04, 10.10 (''not KUbuntu'', see note at bottom); (32-bit and 64-bit systems supported)
 +
* See also: [[SDK/Docs/1.1/MeeGo_1.1_SDK_Host_OS_Support|MeeGo SDK Host OS Support page]].
-
The MeeGo SDK 1.2 is scheduled for release near the end of May. This release if provided as an early preview of the upcoming features, with more in development.  The following updates have been since the MeeGo 1.1 SDK release:
+
'''Filesystem:'''<br>
 +
The MeeGo SDK should be installed on a hardlink-capable filesystem (Unix file systems or NTFS. FAT filesystems are not hardlink-capable and not supported.)
-
* Qt version 4.7.2
+
=== Download and Install ===
-
* Qt Creator 2.1.0
+
Follow the links below to install the SDK
 +
* '''[[SDK/Docs/1.2/MeeGo_SDK_1.2_Preview_for_Windows|Instructions for Windows]]'''
 +
* '''[[SDK/Docs/1.2/MeeGo_SDK_1.2_Preview_for_Linux|Instructions for Linux]]'''
 +
 
 +
=== SDK Features and Supporting Information ===
 +
This version of the SDK is provides a preview of the following features:
 +
 
 +
* [http://labs.qt.nokia.com/2011/03/01/qt-creator-2-1-0-released/ Qt Creator 2.1.0]; built with Qt 4.7.2
 +
* Improved Qt Quick support
* Support for tablet images, toolchain and QEMU image.
* Support for tablet images, toolchain and QEMU image.
-
* Additional Tablet APIs and supporting libraries
+
* Additional [[SDK/MeeGo_UX_Features|MeeGo UX Features]] and supporting libraries
* Graphical installer for Linux
* Graphical installer for Linux
-
* MeeGo UX Components (documentation TBD)
+
* [[MeeGo_UX_Components|MeeGo UX Components]] (early version)
-
* UI Guidelines for tablet released
+
* [http://meego.com/sites/all/files/users/admin/meego_touch_ui_v1.2.pdf UI Guidelines] for tablet development
 +
=== Further Information ===
The following related SDK documentation is useful for getting familiar with the application development lifecycle:
The following related SDK documentation is useful for getting familiar with the application development lifecycle:
* [http://meego.com/developers/meego-application-development-cycle MeeGo Developer Story]
* [http://meego.com/developers/meego-application-development-cycle MeeGo Developer Story]
* [http://apidocs.meego.com/1.1/core/html/index.html MeeGo API], [http://apidocs.meego.com/1.1/platform/html/index.html Platform API]
* [http://apidocs.meego.com/1.1/core/html/index.html MeeGo API], [http://apidocs.meego.com/1.1/platform/html/index.html Platform API]
-
* [http://wiki.meego.com/SDK/Docs/1.1/Creating_Hello_World Qt Development: Creating Hello World]
+
* [[SDK/Docs/1.1/Creating_Hello_World|Qt Development: Creating Hello World]]
Additional applicable, up-to-date, generic MeeGo development information can be found at:
Additional applicable, up-to-date, generic MeeGo development information can be found at:
* http://meego.com/developers
* http://meego.com/developers
-
* http://wiki.meego.com/SDK/Docs/1.1
+
* [[SDK/Docs/1.1]]
-
 
+
-
=== Prerequisites ===
+
-
'''Hardware'''
+
-
Any reasonably modern IA hardware.  For Windows-based systems, the graphics and CPU virtualization are limited and a faster system may be necessary to use the virtual machine with software rendering.
+
-
* Systems known to work: Intel Core 2 Quad CPU, Q8200, i5 or i7 processor-based systems.
+
-
* In Windows, the virtual machine (QEMU) relies on kqemu to provide CPU virtualization support.  On some machines this does not work.  If you have trouble, please see [http://wiki.meego.com/SDK/Docs/1.1/Troubleshooting#QEMU_SDK_Errors troubleshooting].
+
-
'''Software:'''
+
-
Windows XP w/SP3 and Windows 7 (32-bit systems can run virtual machine.  64-bit systems can use SDK but will need a device to run/debug)
+
-
Ubuntu 10.04, 10.10; Fedora 13, 14 (32-bit and 64-bit systems supported)
+
-
See also: [http://wiki.meego.com/SDK/Docs/1.1/MeeGo_1.1_SDK_Host_OS_Support MeeGo SDK Host OS Support page].
+
-
'''Filesystem:'''
+
-
The MeeGo SDK should be installed on a hardlink-capable filesystem (Unix file systems or NTFS. FAT filesystems are not hardlink-capable and not supported.)
+
-
 
+
-
=== Notes and caveats ===
+
-
 
+
-
* '''QEMU runtimes and targets''': The following pre-defined targets and runtimes are the only ones which have been verified on Windows:
+
-
** Targets:
+
-
***  meego-tablet-ux-ia32-1.1.90.2.20110209.4
+
-
** Runtimes:
+
-
***  meego-tablet-ia32-sdk-1.1.90.2.20110209.4-sda-runtime
+
-
*: '''Others may be listed by MADDE, but are not guaranteed to work.'''
+
-
* '''Uninstalling:''' Everything you've installed as part of the SDK, ''including MADDE targets and runtimes'', will be removed if you run the MeeGo SDK uninstaller.
+
-
* '''Commands:''' Terminal commands in the instructions below are prefaced with "$". Do not include $ when entering the commands in your terminal.
+
-
 
+
-
== Download and setup the MeeGo SDK ==
+
-
 
+
-
<ol>
+
-
<li>Download the MeeGo SDK installer:</li>
+
-
<table border='1' cellpadding='3px' style="padding: 0em">
+
-
<tr><th>File</th><th>Description</th><th>Size</th></tr>
+
-
<tr><td>http://apollo.jf.intel.com/tablet/sdk/installer/meego-sdk-1.2-preview-installer-full-tablet.exe</td>
+
-
    <td>MeeGo SDK Windows installer</td>
+
-
    <td>1.5G</td>
+
-
</tr>
+
-
</table>
+
-
  <li>Double-click on the downloaded <code>.exe</code> file and follow the prompts to install the SDK.</li>
+
-
  <li>'''If you are using Windows XP, please download a small file vcredist_x86.exe (Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)) from http://www.microsoft.com/downloads/en/details.aspx?FamilyID=a5c84275-3b97-4ab7-a40d-3802b2af5fc2 and install it to your system.''' This is not needed for Windows 7.
+
-
  <li>Launch Qt Creator with ''Start > All Programs > MeeGo SDK > QtCreator''.</li>
+
-
 
+
-
== Develop MeeGo Applications ==
+
-
<ol>
+
-
 
+
-
<li> '''Create a MeeGo touch project (for handset) or Qt Gui project (for netbook) ''' </li>
+
-
Go to the menu: File -> New File or Project -> Qt Application Project -> Meego Touch Framework Application. <br/>
+
-
[[File:Windows_sdk_2.png]]
+
-
 
+
-
In "Project setup" dialog, choose "meego-tablet".
+
-
 
+
-
[[File:Project_setup.PNG]]
+
-
 
+
-
<li> '''Disable shadow build'''</li>
+
-
 
+
-
'''"Shadow build” should be disabled before build an app. To do that, select “Projects” button in the left side of Qt Creator, and uncheck “Shadow build” in “Build Settings”. '''
+
-
</ol>
+
-
===Run an app within the QEMU Emulator===
+
-
<ol>
+
-
<li> '''Set up emulator: Install kqemu accelerator for QEMU on 32-bit Windows system'''</li>
+
-
Notice: The kqemu could only be used on 32-bit Windows. 64-bit Windows could not work with kqemu. You can not use emulator on 64-bit Windows. Use real device instead.
+
-
 
+
-
Download package from http://wiki.qemu.org/download/kqemu-1.4.0pre1.tar.gz
+
-
 
+
-
Get the kqemu.inf and kqemu.sys files from above package
+
-
 
+
-
For Windows XP system, right click the kqemu.inf file and select "install".
+
-
 
+
-
For Windows 7 or Windows Vista system, edit the kqemu.inf file to do below changes, and then right click the kqemu.inf, select "install".
+
-
 
+
-
  [DefaultInstall.NT] --> [DefaultInstall]
+
-
  [DefaultInstall.NT.Services] --> [DefaultInstall.Services]
+
-
  [Uninstall.NT] --> [Uninstall]
+
-
  [Uninstall.NT.Services] --> [Uninstall.Services]
+
-
 
+
-
Start the kqemu manually. Select ''Start > All Programs > Accessories'', click right mouse button over ''Command Prompt'', and select "Run as administrator". In Command Prompt, run the following command:
+
-
net start kqemu
+
-
You need to start kqemu again after you reboot the system.
+
-
 
+
-
 
+
-
<li> '''Configuration for a MeeGo Emulator device''' </li>
+
-
 
+
-
 
+
-
 
+
-
Get to the menu: Tools > Options > Projects > MeeGo Device Configurations. Click "Add" button to add a runtime for emulator. Set "Device type" to "MeeGo emulator"; set "Authentication type" to "Password"; set "Username" to "root"; set "Password" to "meego".<br/>
+
-
[[File:Meego-sdk-emulator.png|800px]]
+
-
 
+
-
<li> '''Set Run Configuration''' </li>
+
-
Click "Projects" again on the left side.  Select "Run" in the MeeGo Build/Run box at the top.  Make sure that the "Device configuration" is set to "MeeGo Emulator".  This will ensure that QEMU is started when you run your application.  You can now launch the QEMU MeeGo emulator.  Click the "Start Meego emulator" icon near the bottom left corner of Qt Creator (circled in red in the screenshot below).<br>
+
-
[[File:Meego-sdk-run-settings.png|800px]]
+
-
 
+
-
Note: You can also start the Qemu from MADDE terminal. For that you need to go to Start > Programs > MeeGoSDK > MADDE Terminal. In the terminal type:
+
-
mad list
+
-
to see the runtime and target names, and then type:
+
-
mad remote -r <runtime> poweron
+
-
 
+
-
<li> '''Build, run and deploy the application'''</li>
+
-
After QEMU starts, click the "Run" icon to run your application. Qt Creator will package and deploy your application to QEMU and start it on the target. You can see the window of your application in QEMU.<br>
+
-
[[File:Qemu-handset.png|800px]]
+
-
 
+
-
 
+
-
 
+
-
<li> '''Debug the application'''</li>
+
-
You can also debug the application by clicking the "Debug" icon. Setting breakpoints and stepping are the same as local applications.<br>
+
-
[[File:Qtcreator-qemu.PNG]]
+
-
</ol>
+
-
 
+
-
====More about QEMU Emulator====
+
-
<hr>
+
-
<strong> How to SSH into QEMU Image </strong><br>
+
-
 
+
-
Anytime MeeGo is running in QEMU, you can use SSH to connect to the image from another terminal on the host system.
+
-
<ol><li>Launch QEMU with MeeGo image </li>
+
-
<li>From a terminal on the host, connect to the running image</li>
+
-
$ ssh meego@127.0.0.1 -p 6666
+
-
</ol>
+
-
Two user accounts are available in the MeeGo images:<br>
+
-
User: meego &nbsp;&nbsp;&nbsp; Password: meego<br>
+
-
User: root    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Password: meego<br><br>
+
-
If user failed to connect to MeeGo image through ssh, please refer to item 9 of [http://wiki.meego.com/SDK/Docs/1.1/Troubleshooting#QEMU_SDK_Errors trouble shooting] to check the sshd daemon in client.
+
-
<hr>
+
-
<strong> The performance of QEMU emulator </strong><br><br>
+
-
Two factors impacts the emulator's performance most:
+
-
<ol>
+
-
<li> CPU virtualization. kvm is utilized on Linux whereas kqemu is utilized on Windows </li>
+
-
<li> Graphic acceleration. </li>
+
-
</ol>
+
-
The kqemu module requires the host windows system to be 32-bit; the graphic acceleration requires the host to have powerful hardware graphic acceleration. The best performance could be achieved if both factors run well. If neither of above is available, the emulator will be extremely slow. <br>
+
-
Suppose that the graphic card on host is not tha powerful, one way to improve UI performance is to alter the UI program not to use opengl. Below are the steps:
+
-
$ ssh meego@127.0.0.1 -p 6666
+
-
$ su
+
-
$ vi /etc/xdg/autostart/meego-ux-daemon.desktop #remove the "--opengl" option
+
-
$ exit
+
-
<hr>
+
-
 
+
-
=== Run an app within a real device ===
+
-
<ol>
+
-
<li> Go to Tools > Options > Projects > MeeGo Device Configurations and click "Add" button. Select "Remote Device" for "Device type", input other information and give a name for this configuration</li>
+
-
[[File:Real-device.png|800px]]
+
-
<li> Open your project and in the "Projects" mode, click "Run" in the little MeeGo target window, and select the configuration you just created in "Device Configuration"</li>
+
-
[[File:Meego-sdk-run-settings-real-device.png|800px]]
+
-
<li> Launch terminal inside the device, and run command "xhost +" in it. </li>
+
-
<li> Click "Run" or "Debug" on the lower left corner of Qt Creator to run or debug your application on the configured Device.</li>
+
-
</ol>
+
-
* '''Note: If the image of an earlier version prior to 1.2 is used, the mad-developer should be installed on device manually before the application is deployed. The following two approaches are alternatives.'''
+
-
<ul>
+
-
<li> Download the repo file from http://download.meego.com/live/Trunk/standard/Trunk.repo to /etc/zypp/repos.d. Then install mad-developer</li>
+
-
sudo zypper ref
+
-
sudo zypper install utfs-client
+
-
sudo zypper install mad-developer
+
-
<li> Download the rpm package from http://download.meego.com/live/Trunk/standard/i586/mad-developer-2.0-2.1.i586.rpm (OR http://download.meego.com/live/Trunk/standard/armv7l/mad-developer-2.0-2.7.armv7l.rpm for arm.). Then install rpm package.</li>
+
-
rpm -i mad-developer-2.0-2.1.i586.rpm
+
-
</ul>
+
-
 
+
-
=== Build an app for Qt Simulator, and run it with Qt Simulator===
+
-
* '''Note: MTF apps cannot be built with simulator currently, while Qt apps can be built.'''
+
-
* Microsoft C++ Compiler is required to build apps for Qt Simulator. To meet this requirement, you can install one of the following software:
+
-
** Microsoft Visio C++ 2008 Express Edition (http://www.microsoft.com/express/Downloads/#2008-Visual-CPP).
+
-
** Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1 (http://www.microsoft.com/downloads/en/details.aspx?FamilyID=c17ba869-9671-4330-a63e-1fd44e0e2505&displaylang=en). This is for Windows 7 only.
+
-
[[File:Untitled2.png|600px]]
+
-
 
+
-
==== Add Qt Simulator target ====
+
-
* Launch Qt Creator
+
-
* Go to Tools > Options > Qt4 > Qt Versions
+
-
* Click the "+" to add a new "Qt Version"
+
-
* In "Version name", provide a name.
+
-
* In "qmake locations:", browse and select qmake location: ''<MEEGO_SDK>\Simulator\Qt\bin\qmake.exe''. Replace <MEEGO_SDK> with the directory where you installed MeeGo SDK; the default is C:\MeeGoSDK_1.2.
+
-
* In "Toolchain:", browse and select "Microsoft Visual C++ Compilers 9.0 (x86)" if you installed "Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1", or select "Microsoft Visual C++ Compilers 8.0 (x86)" if you installed "Microsoft Visio C++ 2008 Express Edition".
+
-
* Build
+
-
* To use the simulator, please refer to http://doc.qt.nokia.com/qtsimulator-1.1/simulator-starting.html for more information. If the simulator cannot be load automatically from Qt Creator, you can launch it once manually by double clicking the icon of "<MEEGO_SDK>\Simulator\Application\simulator.exe" in Explorer.
+
-
 
+
-
==== Install Debugging Tools for Windows====
+
-
You need to install Debugging Tools for Windows for debugging apps with simulator.
+
-
 
+
-
* Launch Qt Creator
+
-
* Select Tools > Option > Debugger > Cdb, check 'CDB'
+
-
*Click the hyperlink of "Debugging Tools for Windows"
+
-
[[File:Qt-creator-option-debugger-cdb.png|600px]]
+
-
*Download the previous versions of debugging tools for Windows (http://msdl.microsoft.com/download/symbols/debuggers/dbg_x86_6.11.1.404.msi)
+
-
[[File:Web-page-download-debugging-tools.png|600px]]
+
-
* If the CDB path had not been configured preperly, click 'Auto Detect' button to set it manually.
+
-
==Known issues and workarounds==
+
=== Notes / Known Issues ===
 +
* '''KUbuntu is not supported at this time'''.  Uninstalling the SDK in KUbuntu removes critical system files.  See [https://bugs.meego.com/show_bug.cgi?id=14925 bug #14925].
 +
* In Windows, the virtual machine (QEMU) relies on kqemu to provide CPU virtualization support.  On some machines this does not work.  If you have trouble, please see [[SDK/Docs/1.1/Troubleshooting#QEMU_SDK_Errors|troubleshooting]].
 +
* When uninstalling, everything you've installed as part of the SDK, ''including MADDE targets and runtimes'', will be removed.
 +
* QEMU does not launch in Ubuntu 10.10 with some old kernel versions. Need to be 2.6.35.25 or newer. See [https://bugs.meego.com/show_bug.cgi?id=10075 bug #10075]
-
Please refer to [[SDK/Docs/1.1/Troubleshooting]].
+
[[Category:SDK]]
 +
[[Category:Meego-1.2]]

Latest revision as of 11:29, 14 April 2011

Contents

MeeGo SDK 1.2 Preview (with Tablet)

This page describes how to use the MeeGo SDK 1.2 Preview. It contains support for the recently released tablet images.

MeeGo applications can be written using Qt (a rich C++ application framework) or Qt Quick (a Javascript-like declarative language). The MeeGo SDK includes Qt Creator IDE with GUI builder to enable streamlined development. It is currently available for use on Linux or Windows workstations as shown below. The MeeGo SDK creates a virtual environment on your workstation that replicates direct development on a MeeGo OS-based system (More...)

Prerequisites

Hardware

  • Any reasonably modern IA hardware. For systems where the graphics or CPU virtualization are limited a faster system will be needed to use the virtual machine.
  • Systems known to work: Intel Core 2 Quad CPU, Q8200, i5 or i7 processor-based systems.

Software:

  • Windows XP w/SP3 and Windows 7 (32-bit systems can run virtual machine. 64-bit systems can use SDK but will need a device to run/debug)
  • Fedora 12, 13 (14 very soon); Ubuntu 10.04, 10.10 (not KUbuntu, see note at bottom); (32-bit and 64-bit systems supported)
  • See also: MeeGo SDK Host OS Support page.

Filesystem:
The MeeGo SDK should be installed on a hardlink-capable filesystem (Unix file systems or NTFS. FAT filesystems are not hardlink-capable and not supported.)

Download and Install

Follow the links below to install the SDK

SDK Features and Supporting Information

This version of the SDK is provides a preview of the following features:

Further Information

The following related SDK documentation is useful for getting familiar with the application development lifecycle:

Additional applicable, up-to-date, generic MeeGo development information can be found at:

Notes / Known Issues

  • KUbuntu is not supported at this time. Uninstalling the SDK in KUbuntu removes critical system files. See bug #14925.
  • In Windows, the virtual machine (QEMU) relies on kqemu to provide CPU virtualization support. On some machines this does not work. If you have trouble, please see troubleshooting.
  • When uninstalling, everything you've installed as part of the SDK, including MADDE targets and runtimes, will be removed.
  • QEMU does not launch in Ubuntu 10.10 with some old kernel versions. Need to be 2.6.35.25 or newer. See bug #10075
Personal tools