=== 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 \
  python language-pack-en texinfo \
  build-essential g++ git bison flex unzip \
  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)
