Meego Wiki
Views

ARM/Creating ARM image using MeeGo Image Creator

From MeeGo wiki
< ARM
Revision as of 13:26, 14 October 2010 by Sage (Talk | contribs)
Jump to: navigation, search

Under construction

Contents

Requirements

 * Fedora 12 or Fedora 13
 * mkfs.ubifs, ubinize and qemu-arm-static from meego-tools repositories (install instructions below).
 * MeeGo Image Creator from git
     * requires git-core (# yum install git-core)

Install qemu-arm-static, mkfs.ubifs and ubinize

NOTE: Fedora has its own mtd-utils package, but that does not include the required tools for ubi creation.

For other distributions see Image_Creation

NOTE: You need both of the repositories below for Fedora 12/13, because some packages are only available in Fedora 11 currently.

Add following lines to for example /etc/yum.repos.d/meego-tools.repo

[meego-tools-f13]
name=Meego tools F13
failovermethod=priority
baseurl=http://repo.meego.com/tools/repos/fedora/13/
enabled=1
gpgcheck=0

[meego-tools-f12]
name=Meego tools F12
failovermethod=priority
baseurl=http://repo.meego.com/tools/repos/fedora/12/
enabled=1
gpgcheck=0

[meego-tools-f11]
name=Meego tools F11
failovermethod=priority
baseurl=http://repo.meego.com/tools/repos/fedora/11/
enabled=1
gpgcheck=0

Install the required package:

sudo yum install mtd-utils mtd-utils-ubi qemu-arm-static btrfs-progs

Get and install MeeGo Image Creator code

If Git version control system or make are missing, those can be installed with commands:

sudo yum install git

Git clone the Meego Image Creator sources to temporary directory and install the codes:

git clone git://gitorious.org/meego-developer-tools/image-creator.git
cd image-creator
sudo tools/mic-check-alldeps
make clean
make
sudo make install
cd ..

Run MeeGo Image Creator

Create a working directory and copy your kickstart file there. Latest kickstart files can be found gitorious (click appropriate branch and then tree). NOTE: When using the kickstarts from the gitorious repository shown earlier you need to use also --release= option in mic to get @BUILD_ID@ set properly. If you wish to build current daily define --release=daily.

There are also kickstarts available with the [ARM/N900/Releases/Weekly weekly build] repos which will generate that specific weekly release.

Image will be created in working directory by default.

Packages will be cached in mycachedir to speed up the next image creation.

If you are behind a proxy, you can set it to mic by adding

proxy=http://proxy.yourcompany.com:8080

to /etc/mic2/mic2.conf.

Ubifs image (OBSOLETE)

sudo mic-image-creator --run-mode=0 --cache=mycachedir --format=ubi --arch=armv7l --save-kernel --config=YOUR_KICKSTART

Loop image

sudo mic-image-creator --run-mode=0 --cache=mycachedir --format=loop --arch=armv7l --config=YOUR_KICKSTART 

Raw image (PREFERRED)

Create the image with following command:

sudo mic-image-creator --run-mode=0 --cache=mycachedir --format=raw --arch=armv7l --save-kernel --config=YOUR_KICKSTART

You will get a directory which ends with -raw suffix and file that includes vmlinuz in its name. The directory contains the *.raw file that is put to the memory card and vmlinuz is put to the N900 with flasher. For information on writing the image/flashing the kernel, see: MMC installation

Troubleshooting

exit status 255 error

warning: %post(libgcc-4.4.2-12.2.armv5tel) scriptlet failed, exit status 255 

This is caused by SELinux, which can be disabled with:

setenforce 0

or

echo "0" > /selinux/enforce

This fix is valid, until you reboot your device.

Personal tools