Test Openmoko Emulation with chroot image

From Openmoko

Revision as of 18:39, 20 July 2007 by Kriss (Talk | contribs)

Jump to: navigation, search

There is an image to provide a fresh Ubuntu 7.04 (feisty) containing the OpenMoko installation as generated by MokoMakefile including working QEMU.


Contents

Usage of the chroot image

If you do just want to test some of the functionality and need a starting point, you can download an ext3 Image.

The Image is just a first test and may contain errors as it's not tested well yet (and the build process was not running through without user interferences).


Installation

Get the Image (about 3.2 GB) from http://b030.tfh-berlin.de/OpenMoko-Dev-x86_2007-07-16.img.bz2:

wget http://b030.tfh-berlin.de/OpenMoko-Dev-x86_2007-07-16.img.bz2


Check the md5sum:

md5sum OpenMoko-Dev-x86_2007-07-16.img.bz2
# it print "41715e06d7e59a94e4f05cf33ba054b5  OpenMoko-Dev-x86_2007-07-16.img.bz2"


You will need to decompress the Image (about 15 Gbyte). An you'll also need the chroot software and loop back device support in your kernel.

bzip2 -d OpenMoko-Dev-x86_2007-07-16.img.bz2

To install chroot in GNU/Debian / Ubuntu you can use:

sudo sh
apt-get install dchroot


To mount and activate the chroot image use

mkdir /var/chroot
mount -o loop OpenMoko-Dev-x86_2007-07-16.img /var/chroot

Add a new chroot configuration:

echo "OpenMoko /var/chroot" | tee -a /etc/dchroot.conf

Edit /etc/fstab and insert skip this to mount manually:

/tmp            /var/chroot/tmp         none    bind            0       0 
proc-chroot     /var/chroot/proc        proc    defaults        0       0 
devpts-chroot   /var/chroot/dev/pts     devpts  defaults        0       0 
mount -a

Manual mount:

mount -o bind /tmp /var/chroot/tmp
mount -t proc proc-chroot /var/chroot/proc
mount -t devpts devpts-chroot /var/chroot/dev/pts

Copy your /etc/resolv.conf:

cp /etc/resolv.conf /var/chroot/etc/

As the user who started X11:

xhost +                   # assuming you are behind NAT

Start the chroot environment (as root again):

dchroot -d -c OpenMoko    # -d to take the environment variables with you

Starting the Emulation

You can start the emulation by running:

cd /home/moko/openmoko/trunk/src/host/qemu-neo1973/
export DISPLAY=:0.0
arm-softmmu/qemu-system-arm -M neo -m 130 -mtdblock openmoko/openmoko-flash.image \
-kernel openmoko/openmoko-kernel.bin -usb -show-cursor -usbdevice keyboard

Additional Notes

There is no root password set and no user moko in the systems right now which should not be a problem when used in an emulator or a chroot environment, here you have both.

Personal tools

There is an image to provide a fresh Ubuntu 7.04 (feisty) containing the OpenMoko installation as generated by MokoMakefile including working QEMU.


Usage of the chroot image

If you do just want to test some of the functionality and need a starting point, you can download an ext3 Image.

The Image is just a first test and may contain errors as it's not tested well yet (and the build process was not running through without user interferences).


Installation

Get the Image (about 3.2 GB) from http://b030.tfh-berlin.de/OpenMoko-Dev-x86_2007-07-16.img.bz2:

wget http://b030.tfh-berlin.de/OpenMoko-Dev-x86_2007-07-16.img.bz2


Check the md5sum:

md5sum OpenMoko-Dev-x86_2007-07-16.img.bz2
# it print "41715e06d7e59a94e4f05cf33ba054b5  OpenMoko-Dev-x86_2007-07-16.img.bz2"


You will need to decompress the Image (about 15 Gbyte). An you'll also need the chroot software and loop back device support in your kernel.

bzip2 -d OpenMoko-Dev-x86_2007-07-16.img.bz2

To install chroot in GNU/Debian / Ubuntu you can use:

sudo sh
apt-get install dchroot


To mount and activate the chroot image use

mkdir /var/chroot
mount -o loop OpenMoko-Dev-x86_2007-07-16.img /var/chroot

Add a new chroot configuration:

echo "OpenMoko /var/chroot" | tee -a /etc/dchroot.conf

Edit /etc/fstab and insert skip this to mount manually:

/tmp            /var/chroot/tmp         none    bind            0       0 
proc-chroot     /var/chroot/proc        proc    defaults        0       0 
devpts-chroot   /var/chroot/dev/pts     devpts  defaults        0       0 
mount -a

Manual mount:

mount -o bind /tmp /var/chroot/tmp
mount -t proc proc-chroot /var/chroot/proc
mount -t devpts devpts-chroot /var/chroot/dev/pts

Copy your /etc/resolv.conf:

cp /etc/resolv.conf /var/chroot/etc/

As the user who started X11:

xhost +                   # assuming you are behind NAT

Start the chroot environment (as root again):

dchroot -d -c OpenMoko    # -d to take the environment variables with you

Starting the Emulation

You can start the emulation by running:

cd /home/moko/openmoko/trunk/src/host/qemu-neo1973/
export DISPLAY=:0.0
arm-softmmu/qemu-system-arm -M neo -m 130 -mtdblock openmoko/openmoko-flash.image \
-kernel openmoko/openmoko-kernel.bin -usb -show-cursor -usbdevice keyboard

Additional Notes

There is no root password set and no user moko in the systems right now which should not be a problem when used in an emulator or a chroot environment, here you have both.