Meego Wiki
Views

SDK/Docs/1.1/Getting started with the MeeGo SDK for Linux

From MeeGo wiki
< SDK | Docs | 1.1(Difference between revisions)
Jump to: navigation, search
(Add the repository public key)
(Install MeeGo Runtime)
 
(8 intermediate revisions not shown)
Line 8: Line 8:
== Prerequisites ==
== Prerequisites ==
-
* '''Hardware:''' Any reasonably modern hardware, such as 32-bit Intel Atom or Intel Core 2 CPU.  '''To use QEMU''' to run MeeGo in a virtual machine your system must have support for ''Virtualization Technology'' (VT).  See the [[SDK/Docs/1.1/MeeGo_SDK_Graphics_Acceleration|Graphics Acceleration]] page for details.
+
* '''Hardware:''' Any reasonably modern hardware, such as 32-bit Intel Atom or Intel Core 2 CPU.  '''To use QEMU''' to run MeeGo in a virtual machine, your system must have support for ''Virtualization Technology'' (VT).  See the [[SDK/Docs/1.1/MeeGo_SDK_Graphics_Acceleration|Graphics Acceleration]] page for details.
-
* '''Software:'''  The MeeGo 1.1 SDK has been validated on 32-bit versions of [https://fedoraproject.org/en/index Fedora 12], [[https://fedoraproject.org/en/index Fedora 13], [http://www.ubuntu.com/ Ubuntu 9.10], and [http://www.ubuntu.com/ Ubuntu 10.04 LTS].  For support status and issues using other host OS's see [http://wiki.meego.com/SDK/Docs/1.1/MeeGo_1.1_SDK_Host_OS_Support this page].  
+
* '''Software:'''  The MeeGo 1.1 SDK has been validated on 32-bit versions of [https://fedoraproject.org/en/index Fedora 12], [[https://fedoraproject.org/en/index Fedora 13], [http://www.ubuntu.com/ Ubuntu 9.10], and [http://www.ubuntu.com/ Ubuntu 10.04 LTS].  For support status and issues using other host OSs, see [http://wiki.meego.com/SDK/Docs/1.1/MeeGo_1.1_SDK_Host_OS_Support this page].  
-
* '''Root privileges:''' To install the SDK you will need to have root privileges.  Commands that require root privileges are prefaced with "sudo". For convenience, you may wish to setup "sudo" capabilities to easily switch between root and normal user privileges (see [http://www.gratisoft.us/sudo/sudo.man.html sudoers manpage].)
+
* '''Root privileges:''' To install the SDK, you will need to have root privileges.  Commands that require root privileges are prefaced with "sudo". For convenience, you may wish to set up "sudo" capabilities, to easily switch between root and normal user privileges (see [http://www.gratisoft.us/sudo/sudo.man.html sudoers manpage].)
-
* '''Commands:''' Terminal commands are prefaced with "$".  Do not enter $ when entering the commands in your terminal.
+
* '''Commands:''' Terminal commands are prefaced with "$".  Do not enter $, when entering the commands in your terminal.
== Configuring distributions package manager ==
== Configuring distributions package manager ==
Line 21: Line 21:
Add the following line to <code>/etc/apt/sources.list.d/meego-sdk.list</code>.  Replace ${distribution}/${version} with one of the following: "debian/5.0", "ubuntu/09.10", "ubuntu/10.04" or "ubuntu/10.10".
Add the following line to <code>/etc/apt/sources.list.d/meego-sdk.list</code>.  Replace ${distribution}/${version} with one of the following: "debian/5.0", "ubuntu/09.10", "ubuntu/10.04" or "ubuntu/10.10".
-
  deb http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/ /
+
 
 +
  deb <nowiki>http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/   /</nowiki>
==== Add the repository public key ====
==== Add the repository public key ====
Line 28: Line 29:
  $ gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -
  $ gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -
-
'''Note:''' This keyserver used above is currently unresponsive.  As a workaround, you may choose to use a different, trusted keyserver.  For example:
+
'''Note:''' The keyserver used above may currently be unresponsive.  If that is the case, you may choose to use a different, trusted keyserver.  For example:
  $ gpg --keyserver pool.sks-keyservers.net --recv 0BC7BEC479FC1F8A
  $ gpg --keyserver pool.sks-keyservers.net --recv 0BC7BEC479FC1F8A
Line 50: Line 51:
  $ cd /etc/yum.repos.d/
  $ cd /etc/yum.repos.d/
-
  $ sudo wget http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo
+
  $ <nowiki>sudo wget http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo</nowiki>
==== Install the signing key ====
==== Install the signing key ====
-
  $ sudo rpm --import http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/repodata/repomd.xml.key
+
  $ <nowiki>sudo rpm --import http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/repodata/repomd.xml.key</nowiki>
==== Update the packages database ====
==== Update the packages database ====
Line 64: Line 65:
To add the MeeGo SDK repository on a system running MeeGo, run the following command.  Replace ${distribution}/${version} with one of the following values: "meego/1.1" or "meego/trunk".
To add the MeeGo SDK repository on a system running MeeGo, run the following command.  Replace ${distribution}/${version} with one of the following values: "meego/1.1" or "meego/trunk".
-
  $ sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo
+
  $ <nowiki>sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo</nowiki>
=== On openSUSE ===
=== On openSUSE ===
Line 70: Line 71:
To add the MeeGo repository, run the following command.  Replace ${distribution}/${version} with one of the following values: "opensuse/11.2" or "opensuse/11.3".
To add the MeeGo repository, run the following command.  Replace ${distribution}/${version} with one of the following values: "opensuse/11.2" or "opensuse/11.3".
-
  $ sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo
+
  $ <nowiki>sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo</nowiki>
== Installing the MeeGo SDK ==
== Installing the MeeGo SDK ==
Line 98: Line 99:
</ul>
</ul>
-
'''For IA32 only:'''http://wiki.meego.com/SDK/Docs/1.1/Configuring_QEMU_runtimes
+
'''For IA32 only:'''[[SDK/Docs/1.1/Configuring_QEMU_runtimes]]
<ul>
<ul>
  <li>Debian / Ubuntu
  <li>Debian / Ubuntu
Line 112: Line 113:
== Install MeeGo Target ==
== Install MeeGo Target ==
-
A ''Target'' is used to build programs using the MeeGo toolchain and libraries (sysroot).  It is downloaded as a large (~250MB) .bz2 file using the commands below.  MADDE (MeeGo Application Develop and Debug Environment ([http://wiki.maemo.org/MADDE background])) is a tool that assists in the download and installation of the Target.  "mad-admin" is the MADDE command-line tool.  You can install multiple Targets and switch easily between them in Qt Creator (described later).
+
A ''Target'' is used to build programs using the MeeGo toolchain and libraries (sysroot).  It is downloaded as a large (~250 MB) .bz2 file using the commands below.  MADDE (MeeGo Application Develop and Debug Environment ([http://wiki.maemo.org/MADDE background])) is a tool that assists in the download and installation of the Target.  "mad-admin" is the MADDE command-line tool.  You can install multiple Targets and switch easily between them in Qt Creator (described later).
=== Determine the target you want to use ===
=== Determine the target you want to use ===
Line 152: Line 153:
== Install MeeGo Runtime ==
== Install MeeGo Runtime ==
-
A ''Runtime'' is the MeeGo OS image that is run with QEMU when debugging applications on your host system.  It is not required if you develop against real hardware running MeeGo.  It is downloaded as a large (~650MB) .bz2 file using MADDE.  The Runtime is not needed until you have finished configuring Qt Creator.  However, as this step may take some time, it is recommended to start it now so that it can proceed in the background while you continue following the steps on this page.
+
A ''Runtime'' is the MeeGo OS image that is run with QEMU when debugging applications on your host system.  It is not required if you develop against real hardware running MeeGo.  It is downloaded as a large (~650 MB) .bz2 file using MADDE.  The Runtime is not needed until you have finished configuring Qt Creator.  However, as this step may take some time, it is recommended to start it now so that it can proceed in the background, while you continue following the steps on this page.
-
See [http://wiki.meego.com/SDK/Docs/1.1/Configuring_QEMU_runtimes Downloading a Runtime and Using QEMU]
+
See [[SDK/Docs/1.1/Configuring_QEMU_runtimes|Downloading a Runtime and Using QEMU]]
== Configuring Qt Creator to use the MeeGo toolchain(s) ==
== Configuring Qt Creator to use the MeeGo toolchain(s) ==

Latest revision as of 21:10, 21 June 2011

This page describes how to install and configure the MeeGo 1.1 SDK on your Linux development system.

Contents

Prerequisites

  • Hardware: Any reasonably modern hardware, such as 32-bit Intel Atom or Intel Core 2 CPU. To use QEMU to run MeeGo in a virtual machine, your system must have support for Virtualization Technology (VT). See the Graphics Acceleration page for details.
  • Software: The MeeGo 1.1 SDK has been validated on 32-bit versions of Fedora 12, [Fedora 13, Ubuntu 9.10, and Ubuntu 10.04 LTS. For support status and issues using other host OSs, see this page.
  • Root privileges: To install the SDK, you will need to have root privileges. Commands that require root privileges are prefaced with "sudo". For convenience, you may wish to set up "sudo" capabilities, to easily switch between root and normal user privileges (see sudoers manpage.)
  • Commands: Terminal commands are prefaced with "$". Do not enter $, when entering the commands in your terminal.

Configuring distributions package manager

On Ubuntu or Debian

Add the repo

Add the following line to /etc/apt/sources.list.d/meego-sdk.list. Replace ${distribution}/${version} with one of the following: "debian/5.0", "ubuntu/09.10", "ubuntu/10.04" or "ubuntu/10.10".


deb http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/   /

Add the repository public key

$ gpg --keyserver pgpkeys.mit.edu --recv 0BC7BEC479FC1F8A
$ gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -

Note: The keyserver used above may currently be unresponsive. If that is the case, you may choose to use a different, trusted keyserver. For example:

$ gpg --keyserver pool.sks-keyservers.net --recv 0BC7BEC479FC1F8A
$ gpg --export --armor 0BC7BEC479FC1F8A | sudo apt-key add -

Update the packages database

$ sudo apt-get update

Verify repo correctness

To check that the MeeGo repository has been correctly added, run the following command. The details of the MADDE package should be printed.

$ apt-cache policy madde

On Fedora

Add the repo

Add the MeeGo SDK yum repository. Replace ${distribution}/${version} with one of the following: "fedora/12" or "fedora/13".

$ cd /etc/yum.repos.d/
$ sudo wget http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo

Install the signing key

$ sudo rpm --import http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/repodata/repomd.xml.key

Update the packages database

$ sudo yum update

On MeeGo

To add the MeeGo SDK repository on a system running MeeGo, run the following command. Replace ${distribution}/${version} with one of the following values: "meego/1.1" or "meego/trunk".

$ sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo

On openSUSE

To add the MeeGo repository, run the following command. Replace ${distribution}/${version} with one of the following values: "opensuse/11.2" or "opensuse/11.3".

$ sudo zypper addrepo -f http://repo.meego.com/MeeGo/sdk/host/repos/${distribution}/${version}/meego-sdk.repo

Installing the MeeGo SDK

  • Debian / Ubuntu
    $ sudo apt-get install meego-sdk
  • Fedora
    $ sudo yum install meego-sdk
  • OpenSUSE / MeeGo
    $ sudo zypper install meego-sdk

For ARM only:

  • Debian / Ubuntu
    $ sudo apt-get install meego-sdk-armv7l
  • Fedora
    $ sudo yum install meego-sdk-armv7l
  • OpenSUSE / MeeGo
    $ sudo zypper install meego-sdk-armv7l

For IA32 only:SDK/Docs/1.1/Configuring_QEMU_runtimes

  • Debian / Ubuntu
    $ sudo apt-get install meego-sdk-ia32
  • Fedora
    $ sudo yum install meego-sdk-ia32
  • OpenSUSE / MeeGo
    $ sudo zypper install meego-sdk-ia32

Install MeeGo Target

A Target is used to build programs using the MeeGo toolchain and libraries (sysroot). It is downloaded as a large (~250 MB) .bz2 file using the commands below. MADDE (MeeGo Application Develop and Debug Environment (background)) is a tool that assists in the download and installation of the Target. "mad-admin" is the MADDE command-line tool. You can install multiple Targets and switch easily between them in Qt Creator (described later).

Determine the target you want to use

Run the command below. The available targets will be listed under the "Targets:" heading.

$ sudo mad-admin list

Some hints about the target prefixes:

  • meego-core-armv7l: Build applications for ARM handheld devices (such as N900)
  • meego-handset-ia32: Build applications for x86 handheld devices (such as Aava)
  • meego-netbook-ia32: Build applications for x86 netbooks.

Create the target

Run the command below. Replace <target> with the target you determined in the previous step. Note that the -f flag instructs MADDE to download the Target tarball (bz2) first.

$ sudo mad-admin create -f <target>

If you encounter problems, check the troubleshooting page.

Verify target installation

To check that the target has been installed correctly, run the following. Replace <target> with the same value used in the previous step.

$ mad -t <target> pscreate -t qt-simple qthello
$ cd qthello
$ mad -t <target> qmake
$ mad -t <target> make

Note: Running qmake will print "-unix is deprecated". This is not an error with the compilation. You can safely ignore this for now.

Verify correct build

To check that the qt-simple application is created for the correct target, run the following command, and verify the output.

$ file build/qthello

Install MeeGo Runtime

A Runtime is the MeeGo OS image that is run with QEMU when debugging applications on your host system. It is not required if you develop against real hardware running MeeGo. It is downloaded as a large (~650 MB) .bz2 file using MADDE. The Runtime is not needed until you have finished configuring Qt Creator. However, as this step may take some time, it is recommended to start it now so that it can proceed in the background, while you continue following the steps on this page.

See Downloading a Runtime and Using QEMU

Configuring Qt Creator to use the MeeGo toolchain(s)

Start Qt Creator by selecting Applications > Programming > Qt Creator.

Configure Qt Creator to use the MeeGo toolchain(s):

  1. Go to Tools > Options > Qt4 > Qt Versions.
  2. On the right side of the Qt Versions view, click on the plus sign button to add a new version.
    A blank, new version appears in the Qt Versions view.
  3. On the Version Name line, specify a name for the new version.
  4. On the qmake location line, specify a qmake location for the new version. The toolchain installs by default to usr/lib/madde/linux-i686/targets/<target>/bin/qmake.
  5. Click Rebuild, Apply and OK.
Adding the MeeGo toolchain(s) in Qt Creator

Using the MeeGo SDK Qt version

It is also possible to use Qt Creator without a MeeGo toolchain. This option can be useful if you don't need to cross-compile your software: for example, if you are doing QML development with no use of C++.

The steps are the same as above, but the qmake location is set to the qmake installed with the meego-sdk-qt libraries. The usual location for this on Linux is:

$ /opt/meego/meego-sdk-qt/bin/qmake

Note: On Ubuntu 10.10, you may need to install g++ in order for this step to work. If necessary, do this:

$ sudo apt-get install g++

Developing with the SDK

To start developing with the MeeGo SDK, the hello world tutorial is a good starting point.

This tutorial covers how to start a project, package it, and deploy it to a device (either a real device, or a QEMU runtime set up through MADDE).

Removing components

On Ubuntu

To remove installed components, run:

$ sudo apt-get remove --purge meego-sdk-qtcreator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu meego-sdk-qt

To remove dependencies related to installed components, run:

$ sudo apt-get autoremove

To remove MADDE directory (it is not automatically removed when "madde" package is uninstalled):

$ sudo rm -rf /usr/lib/madde

To remove the packages from your local repository (/var/cache/apt/archives/), run:

$ sudo apt-get clean

On Fedora

To remove installed components, run:

$ sudo yum remove meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu

To remove MADDE directory:

$ sudo rm -rf /usr/lib/madde


On openSUSE / MeeGo

To remove installed components, run:

$ sudo zypper remove -u meego-sdk-qt-creator madde qt-tools arm-2009q1 qemu-arm qemu-gl meego-sdk-i586-toolchain meego-qemu

To remove MADDE directory:

$ sudo rm -rf /usr/lib/madde

Another language version of this page

Personal tools