I succeeded following Cardano’s Github instructions on building cardano node and wallet.
This is on Ubuntu 17.10 x86_64 fresh install.
As promised, here are the commands I used. You can put copy them into a file and run that.
#/bin/sh
set -e
#Install prerequisites
sudo apt-get update
sudo apt-get -y install git curl tmux libssl-dev cabal-install cmake libgflags-dev zlib1g-dev libbz2-dev libsnappy-dev clang g++-6
# Get Haskell Stack
set +e
curl -sSL https://get.haskellstack.org/ | sh
set -e
# Get CPPHS
cabal update
sudo cabal install cpphs --global
#Install Nix package manager
curl https://nixos.org/nix/install | sh
sudo mkdir -p /etc/nix
sudo rm -f /etc/nix/nix.conf
sudo touch /etc/nix/nix.conf
echo "binary-caches = https://cache.nixos.org https://hydra.iohk.io" | sudo tee -a /etc/nix/nix.conf
echo "binary-caches-public-keys = hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ=" | sudo tee -a /etc/nix/nix.conf
. ~/.nix-profile/etc/profile.d/nix.sh
# Make RocksDB
if [ ! -d "rocksdb" ]; then
git clone https://github.com/facebook/rocksdb.git
fi
cd rocksdb
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/lib
sudo make install-shared CC=gcc-6 CXX=g++-6
cd ..
# Get cardano
if [ ! -d "cardano-sl" ]; then
git clone https://github.com/input-output-hk/cardano-sl.git
fi
cd cardano-sl
git checkout cardano-sl-1.0
#Build Cardano SL
if [ ! -d "cardano-sl-1.0" ]; then
nix-build -A cardano-sl-static --cores 0 --max-jobs 2 --no-build-output --out-link cardano-sl-1.0
fi
#Get NVM
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | sh
# Get nvm command defined. You might need to do this manually.
. ~/.nvm/nvm.sh
#Install NPM v6
nvm install 6
#Build Daedalus bridge
./scripts/build/daedalus-bridge.sh
#Link daedalus-client-api
cd daedalus
npm link
npm link daedalus-client-api
#Get Daedalus
cd ~
if [ ! -d "daedalus" ]; then
git clone https://github.com/input-output-hk/daedalus.git
fi
#Build Daedalus
cd daedalus
./scripts/link-bridge.sh
npm install
Next is to figure out how to run.