=== Building an image ===

git clone --recursive git@github.com:open-power/op-build.git
cd op-build
. op-build-env
op-build palmetto_defconfig && op-build

Building on *64-bit* Ubuntu/Debian systems
==========================================

1. Install Ubuntu 14.04 or Debian 7.5 64-bit.
2. Install the packages necessary for the build:
> sudo apt-get install cscope ctags libz-dev libexpat-dev libc6-dev-i386 \
  build-essential g++ git bison flex gcc-multilib g++-multilib \
  libxml-simple-perl libxml-sax-perl libxml2-dev libxml2-utils xsltproc
3. Continue with the clone, environment setup, and build as noted above.

Building on *64-bit* Fedora systems
==========================================

1. Install Fedora 20 64-bit.
2. Install the packages necessary for the build:
> sudo yum update vim-minimal
> sudo yum install vim gcc-c++ flex bison git ctags cscope expat-devel patch glibc-devel.i686 libgcc.i686 zlib-devel zlib-static libstdc++.i686 libxml2-devel.i686
3. Install PERL modules necessary for the build:
>  sudo yum install "perl(XML::Simple)" "perl(YAML)" "perl(XML::SAX)" "perl(Fatal)" "perl(Thread::Queue)" "perl(Env)" "perl(XML::LibXML)" "perl(Digest::SHA1)"

Troubleshooting
===============

* If git is complaining about "fatal: reference is not a tree" with a commit matching a buildroot change, try:
> rm -rf op-build/buildroot
> cd op-build
> git clone --recursive git@github.com:open-power/buildroot.git


* If make is complaining during skiboot link phases, revert make to version 3.81
-- On Fedora
--> sudo rpm -del --nodeps make
--> sudo wget ftp://fr2.rpmfind.net/linux/centos/6.5/os/x86_64/Packages/make-3.81-20.el6.x86_64.rpm
--> sudo rpm --install make-3.81-20.el6.x86_64.rpm

(instructions for make reversion from http://curiositydrivendevelopment.blogspot.com)
