The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)


Tools

From Mer Wiki
(Difference between revisions)
Jump to: navigation, search
(Initial entry for sp_smaps toolset)
Line 1: Line 1:
 
= Tools =
 
= Tools =
Getting started with Mer requires some basic tools that are not always present (or which are modified) in most distros.
+
Getting started with Mer development requires some basic tools. Mer provides a [[Platform SDK]]
 +
with all these tools included as they are not always present (or are modified) in other distros.
 +
 
 +
This page describes the Mer:Tools project which is where the tools are developed and managed.
 +
Most tools have their own page or are covered in other guides.
  
 
== Packaged Versions ==
 
== Packaged Versions ==

Revision as of 17:28, 25 May 2012

Contents

Tools

Getting started with Mer development requires some basic tools. Mer provides a Platform SDK with all these tools included as they are not always present (or are modified) in other distros.

This page describes the Mer:Tools project which is where the tools are developed and managed. Most tools have their own page or are covered in other guides.

Packaged Versions

Generally packaged from Mer:Tools:Testing

 https://build.pub.meego.com/project/show?project=Mer:Tools:Testing
 http://repo.pub.meego.com//Mer:/Tools:/Testing/

Tools for developing

osc

Use a version > 0.132

osc is used to interact with the OBS. It does:

  • command line functions provided by the OBS webui
  • check in / out of packages
  • submits requests
  • runs local builds

You may find latest builds for various distributions at http://download.opensuse.org/repositories/openSUSE:/Tools/

build

build is the actual script used by the OBS workers to build packages. It installs a clean chroot for you and runs a suitable compile command from the package.

You may find latest builds for various distributions at http://download.opensuse.org/repositories/openSUSE:/Tools/

spectacle

Spectacle creates .spec files from .yaml files. This makes is a *lot* easier to package your code.

https://meego.gitorious.org/meego-developer-tools/spectacle
cd /mer/tools
mkdir spectacle
git clone git://gitorious.org/meego-developer-tools/spectacle.git spectacle


qemu (specific snapshot)

qemu is needed for building non-native (ARM/MIPS) packages that need to execute ARM binaries.

qemu is found in the Mer:Tools project (currently on the MeeGo community OBS)

19 Nov2011 : Using 0.14.1

The OBS and IMG systems use qemu-usermode-static.

You need to install qemu-usermode-static package when you do 'osc build' for non-intel architecture and have "chroot: failed to run command `some-command': Exec format error" or "Warning: could not register binfmt handlers". As the package is statically linked, you may install OpenSUSE rpm on Fedora and it should work fine.


Tools for Image Building

kickstarter

https://meego.gitorious.org/~sage/meego-developer-tools/sages-kickstarter
cd /mer/tools
mkdir kickstarter
cd kickstarter
git clone git://gitorious.org/~sage/meego-developer-tools/sages-kickstarter.git kickstarter

mic2 / image-creator

http://meego.gitorious.org/meego-developer-tools/image-creator
cd /mer/tools
mkdir image-creator
cd image-creator
git clone git://gitorious.org/meego-developer-tools/image-creator.git image-creator

Development Tools for on Device usage

Device Memory Profiling via 'sp-smaps'

First you have to add the Mer_Extras repository to your device zypper configuration, available
<repositories> are 'Mer_Extras_armv6l', 'Mer_Extras_armv7hl', 'Mer_Extras_armv7l' and 'Mer_Extras_i568'
root@device# zypper addrepo http://repo.pub.meego.com/Project:/KDE:/Mer_Extras/<repository> Mer-Extras
Now feel free to install the 'sp-smaps' toolset
root@device# zypper refresh
root@device# zypper in sp-smaps

Usage:

Create a memory profiling snapshot:

root@device# sp_smaps_snapshot > my-memory-sp-smaps-snapshot.cap

Create a HTML report from the smaps capture:

root@device# sp_smaps_analyze my-memory-sp-smaps-snapshot.cap

Feel free to compress and copy the generates files for further analysis to a host system:

root@device# tar -cvf my-memory-sp-smaps-snapshot.tar \
  my-memory-sp-smaps-snapshot.cap \
  my-memory-sp-smaps-snapshot.html \
  my-memory-sp-smaps-snapshot.dir
root@device# bzip2 my-memory-sp-smaps-snapshot.tar
root@device# scp my-memory-sp-smaps-snapshot.tar.bz2 <your_user>@<your_host>:~/
Personal tools