wiki:ARM_QEMU

Version 2 (modified by bennylp, 11 years ago) (diff)

--

What do we need:

Setting up Development Environment

QEMU ARM Emulator Installation

TBD.

Colinux Installation

Download, Install, Run

Create a Disk for ARM Development

  1. Create 3GB blank file with Cygwin:
     # under cygwin!
     $ cd /cygdrive/path/to/colinux
     $ dd if=/dev/zero of=disk_armdev bs=1k count=3000000
    
    (note: the above count is three million).
  2. Stop Colinux:
     # from colinux:
     $ shutdown -h now
    
  3. Edit your configuration:
     cobd3=f:\colinux\disk_armdev
    
  4. Restart colinux:
     net start colinux
    
  5. Format and mount the new disk:
     # In colinux:
     $ mkfs -t ext3 /dev/cobd3
     $ mkdir /arm
     $ mount /dev/cobd3 /arm
    

Directory Structure

 /arm/download
 /arm/srcs
 /arm/objs

Tools

Download Latest binutils, GCC, and newlib

binutils:

http://ftp.gnu.org/gnu/binutils/

GCC:

http://ftp.gnu.org/gnu/gcc/

newlib:

ftp://sources.redhat.com/pub/newlib/index.html

  $ mkdir -p /arm/download
  $ cd /arm/download
  $ wget -c http://ftp.gnu.org/gnu/binutils/binutils-2.18.tar.bz2
  $ wget -c http://ftp.gnu.org/gnu/gcc/gcc-3.4.6/gcc-3.4.6.tar.bz2
  $ wget -c ftp://sources.redhat.com/pub/newlib/newlib-1.16.0.tar.gz

Preparing to build

Unpack archives

  $ mkdir -p /arm/srcs
  $ cd /arm/srcs
  $ tar xjf ../download/binutils-2.18.tar.bz2
  $ tar xjf ../download/gcc-3.4.6.tar.bz2
  $ tar xzf ../download/newlib-1.16.0.tar.gz

Prepare newlib to be built along with gcc ===

  $ cd gcc-3.4.6
  $ ln -s ../newlib-1.16.0/newlib .
  $ cd ..

Build Everything