Difference between revisions of "Talk:QEMU"
From ArmadeusWiki
(→With new EABI compilation: new section) |
m (→With new EABI compilation) |
||
Line 81: | Line 81: | ||
== With new EABI compilation == | == With new EABI compilation == | ||
− | + | <pre class="host"> | |
$ wget http://ports.ubuntu.com/ubuntu-ports/dists/lucid/main/installer-armel/current/images/versatile/netboot/vmlinuz | $ wget http://ports.ubuntu.com/ubuntu-ports/dists/lucid/main/installer-armel/current/images/versatile/netboot/vmlinuz | ||
− | |||
$ qemu-system-arm -M versatilepb -cpu cortex-a8 -kernel ./vmlinuz -hda armadeus-qemu.img -m 64-append "root=/dev/sda mem=64M ro" | $ qemu-system-arm -M versatilepb -cpu cortex-a8 -kernel ./vmlinuz -hda armadeus-qemu.img -m 64-append "root=/dev/sda mem=64M ro" | ||
+ | </pre> |
Revision as of 09:51, 29 June 2010
Get/generate simulation images (old version = with ramdisk)
- In our tests we used the QEMU Versatile PB emulated hardware. To get a compatible Linux kernel for this board then:
$ cd your_armadeus_view/ $ wget http://people.debian.org/~aurel32/arm-versatile/vmlinuz-2.6.26-2-versatile
- get some useful environment variables:
$ make shell_env $ source armadeus_env.sh
- in $ARMADEUS_ROOTFS_DIR/etc/inittab, comment following line:
ttySMX0::respawn:/sbin/getty -L ttySMX0 115200,57600,38400 vt100
- Generate your Armadeus Rootfs as an EXT2 image:
$ make menuconfig
Target filesystem options ---> [*] ext2 root filesystem ... (keep all default options)
$ make
- be sure that your rootfs image is less than 16Mbytes (Ramdisk limit)
$ ls -al $ARMADEUS_BINARIES/*.ext2
- and zip it (we will use it as Ramdisk first):
$ gzip -9 $ARMADEUS_BINARIES/apfxx-rootfs.arm.ext2
- Create a fake QEMU Hard disk image
$ qemu-img create -f qcow rootfs.arm_nofpu2.img 20M
Launch it (old method)
- first time with ramdisk
[armadeus]$ qemu-system-arm -m 32 -M versatilepb -kernel vmlinuz-2.6.18-6-versatile \ -initrd apf9328-rootfs.arm.ext2.gz -append "root=/dev/ram" -hda ./apf9328-rootfs.arm_nofpu2.img
- When system has booted, we will create the "hard disk" image. But first, if you are French, load a usable keymap:
# loadkmap < /etc/i18n/fr.kmap
=> loqdk,qp < !etc!i&_n!fr:k,qp on your PC keyboard
- then:
# mkdir /tmp/dev # mknod /tmp/dev/sda b 8 0 # mknod /tmp/dev/sda1 b 8 1 # fdisk /tmp/dev/sda n p 1 <enter> <enter> w # mkfs.ext2 /tmp/dev/sda1
- Now we can mount our brand new file system:
# mkdir /mnt/root # mount /tmp/dev/sda1 /mnt/root
Note: Following steps need you already configured tftp on your host and networking up and running |
- And now we can populate it:
# cd /mnt/root # tftp -g -r apf27-rootfs.arm.tar -l rootfs.arm.tar [HOST IP] # tar -xvf rootfs.arm.tar
- Finally halt the emulated system and, next boot, we can omit the initrd image:
[armadeus]$ qemu-system-arm -m 32 -M versatilepb -kernel vmlinuz-2.6.18-6-versatile \ -append "root=/dev/sda1" -hda ./apf9328-rootfs.arm_nofpu2.img
With new EABI compilation
$ wget http://ports.ubuntu.com/ubuntu-ports/dists/lucid/main/installer-armel/current/images/versatile/netboot/vmlinuz $ qemu-system-arm -M versatilepb -cpu cortex-a8 -kernel ./vmlinuz -hda armadeus-qemu.img -m 64-append "root=/dev/sda mem=64M ro"