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
(clarify what tools do)
(Initial entry for sp_smaps toolset)
Line 70: Line 70:
 
  cd image-creator
 
  cd image-creator
 
  git clone git://gitorious.org/meego-developer-tools/image-creator.git 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>:~/

Revision as of 09:05, 12 April 2012

Contents

Tools

Getting started with Mer requires some basic tools that are not always present (or which are modified) in most distros.

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