install_thrift.sh 1.08 KB
#!/bin/bash
set -eo pipefail

if [ $# -ne 1 ] ; then
    echo "No arguments supplied. Sudo password needed."
    exit 1
fi
SUDOPASS=$1

echo $SUDOPASS | sudo -S -p "" apt-get -y install make libboost-dev libboost-test-dev libboost-program-options-dev libboost-system-dev libboost-filesystem-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev

# C requirements
echo $SUDOPASS | sudo -S -p "" apt-get -y install libglib2.0-dev

# Haskell requirements
echo $SUDOPASS | sudo -S -p "" apt-get -y install ghc cabal-install
cabal update
sudo cabal install --global HTTP

# Java requirements
echo $SUDOPASS | sudo -S -p "" apt-get -y install openjdk-7-jdk ant

# Python requirements
echo $SUDOPASS | sudo -S -p "" apt-get -y install python-all python-all-dev python-all-dbg

# Installation
tar -zxf thrift-0.9.0.tar.gz
cd thrift-0.9.0

# Small fix
sed -i 's/network/network, network-uri/' lib/hs/Thrift.cabal

./configure
make # no -j, as it fails
echo $SUDOPASS | sudo -S -p "" make install
echo $SUDOPASS | sudo -S -p "" ldconfig
cd ..
echo $SUDOPASS | sudo -S -p "" rm -rf thrift-0.9.0