Requirements

We mostly test on x86 Linux, but everything should work on other architectures and FreeBSD/OSX with only a small effort.

On debian-like systems, to install build dependencies, try
sudo aptitude install binutils-gold binutils-dev python man-db bc

Ensure that running ld --version reports that you are using the "gold" linker by creating a link to /usr/bin/ld.gold as ld in your PATH.

To additionally grab GCC 4.6 for Dragonegg:
sudo aptitude install {gcc,gfortran,g++}-4.6{,-multilib} gcc-4.6-plugin-dev

Building AESOP

AESOP is an LLVM project, but we build LLVM with a few patches. This guide should get you started.

     mkdir $PREFIX
     export PATH=$PREFIX/bin:$PATH
     export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PREFIX/lib
     cd $LLVM_SRC
     patch -p0 < $AESOP_SRC/patches/aesop-lto-for-3.3.patch
     cd $LLVM_SRC
     ./configure --prefix=$PREFIX --enable-optimized --enable-assertions --enable-pic --with-binutils-include=/usr/include
     make -j8 && make install
     cd $AESOP_SRC
     ./configure --prefix=$(llvm-config --prefix) --with-llvmobj=$(llvm-config --obj-root) --with-llvmsrc=$(llvm-config --src-root) --includedir=$(llvm-config --includedir)
     make -j8 && make install
         sudo apt-get install gcc-multilib