A fork of rustboot focusing on the ARM functionality and aiming to extend it into a more fully functional kernel. Setup instructions below cribbed also from rustboot.
You need a few things to run ironkernel:
master
branch or 0.9 releaseClone this repository and update rust-core.
$ git clone https://github.com/wbthomason/ironkernel.git
$ cd ironkernel
$ git submodule update --init
### you can also pull latest rust-core:
$ git submodule foreach git pull origin master
Simply install all dependencies:
# pacman -S qemu rust llvm tmux
# yaourt -S gcc-arm-none-eabi
To set things up on OSX, do this:
Install nasm
and qemu
from homebrew:
$ brew install nasm
$ brew install qemu
Install binutils from source.
$ wget 'ftp://sourceware.org/pub/binutils/snapshots/binutils.tar.bz2'
$ ./configure --target=i386-elf
$ make && make install
To get edge Rust going, grab it from git:
$ git clone https://github.com/mozilla/rust
$ cd rust
$ ./configure
$ make && make install
(Note that as of 24/02/2014, @cceckman was having trouble building rust-core from rust's master branch; try the 0.9 release.)
You may have to make some small changes before it builds.
Namely, you may need to adjust the rust prefix in the makefile (I did). Hopefully nothing else.
To compile, simply execute make
command.
To run, use:
$ make run # emulate default platform (ARM)
$ make debug # debug on arm