How to install eth and ethminer? webthree repository confusion!

ordoeordoe tehranMember Posts: 132 ✭✭
Hi,

I know this question has been answered all over the internet, but the cpp-ethereum github repository got moved and suddenly nothing makes sense anymore: https://github.com/ethereum/cpp-ethereum

This repository now links to something called webthree-umbrella: https://github.com/ethereum/webthree-umbrella/wiki

I browsed that wiki but couldn't find any reference to the eth and ethminer clients. Who can point me in the correct direction?

I'm on ArchLinux and wish to compile from source.

Cheers!

Comments

  • ordoeordoe tehranMember Posts: 132 ✭✭
    OK, to understand how to build it for non-*buntu Linux systems, I have to first understand this:

    Compiling for Ubuntu
    1) Prepare repositories:

    sudo apt-get -y update
    sudo apt-get -y install language-pack-en-base
    sudo dpkg-reconfigure locales
    sudo apt-get -y install software-properties-common
    wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -
    sudo add-apt-repository "deb http://llvm.org/apt/trusty/ llvm-toolchain-trusty-3.7 main"
    sudo add-apt-repository -y ppa:ethereum/ethereum-qt
    sudo add-apt-repository -y ppa:ethereum/ethereum
    sudo add-apt-repository -y ppa:ethereum/ethereum-dev
    sudo apt-get -y update
    sudo apt-get -y upgrade
    2) Install dependencies:

    sudo apt-get -y install build-essential git cmake libboost-all-dev libgmp-dev libleveldb-dev libminiupnpc-dev libreadline-dev libncurses5-dev libcurl4-openssl-dev libcryptopp-dev libjson-rpc-cpp-dev libmicrohttpd-dev libjsoncpp-dev libargtable2-dev llvm-3.7-dev libedit-dev mesa-common-dev ocl-icd-libopencl1 opencl-headers libgoogle-perftools-dev qtbase5-dev qt5-default qtdeclarative5-dev libqt5webkit5-dev libqt5webengine5-dev ocl-icd-dev libv8-dev libz-dev
    3) Compile from source:

    git clone --recursive https://github.com/ethereum/webthree-umbrella
    cd webthree-umbrella
    mkdir build
    cd build
    cmake ..
    make -j $(nproc)
    4) Found binaries:

    ./build/libethereum/ethminer/ethminer
    ./build/libethereum/lllc/lllc
    ./build/libethereum/ethvm/ethvm
    ./build/libethereum/ethkey/ethkey
    ./build/libethereum/test/testeth
    ./build/alethzero/alethzero/alethzero
    ./build/alethzero/alethone/alethone
    ./build/alethzero/alethfive/alethfive
    ./build/mix/mix
    ./build/webthree/exp/exp
    ./build/webthree/eth/eth
    ./build/webthree/test/testweb3
    ./build/webthree/test/ethrpctest/ethrpctest
    ./build/libweb3core/test/testweb3core
    ./build/libweb3core/rlp/rlp
    ./build/solidity/solc/solc
    ./build/solidity/test/soltest
    Source documentation:
    https://github.com/ethereum/webthree-umbrella/wiki/Building-on-Ubuntu
    https://github.com/ethereum/webthree-umbrella/wiki/Linux--Generic-Building
  • ordoeordoe tehranMember Posts: 132 ✭✭
    edited October 2015
    Is there any list of dependencies available somewhere? Yes!
    gavofyork said:

    Core stuff (generally needed)
    libgmp-dev: libsecp256k1 -> libweb3core
    libboost-all-dev: libweb3core (though not all modules are needed)
    libcryptopp-dev: libweb3core, will be removed soon
    libleveldb-dev: libweb3core
    libminiupnpc-dev: libweb3core
    libjsoncpp-dev: libweb3core
    libcurl4-openssl-dev: webthree (i think - should check)
    libjson-rpc-cpp-dev: webthree
    libmicrohttpd-dev: webthree
    libreadline-dev: webthree
    libv8-dev: libjsconsole -> webthree
    libedit-dev: is this even needed?
    libargtable2-dev: is this even needed?

    EVMJIT stuff (not required if building -DEVMJIT=0)
    llvm-3.7-dev: libevmjit

    Open CL stuff (not required if building -DETHASHCL=0)
    mesa-common-dev
    ocl-icd-libopencl1
    opencl-headers
    ocl-icd-dev

    Performance stuff (not required if building -DPROFILING=0)
    libgoogle-perftools-dev

    GUI stuff (not required if building -DGUI=0)
    qtbase5-dev
    qt5-default
    qtdeclarative5-dev
    libqt5webkit5-dev
    libqt5webengine5-dev

    libncurses5-dev: not used.

    Translated for ArchLinux that is:

    core/gmp
    extra/boost
    extra/boost-libs
    aur/cryptopp
    extra/leveldb
    community/miniupnpc
    extra/jsoncpp
    core/curl
    aur/libjson-rpc-cpp
    community/libmicrohttpd
    core/readline
    aur/v8-3.15
    core/libedit
    aur/argtable

    extra/llvm

    extra/mesa
    extra/ocl-icd
    community/opencl-headers
    extra/gperftools

    extra/qt5-base
    extra/qt5-declarative
    extra/qt5-webkit
    extra/qt5-webengine
  • ordoeordoe tehranMember Posts: 132 ✭✭
    Ok, I think I got it.

    Compiling for ArchLinux:
    1) Get an AUR Helper. I use pacaur.
    2) Install dependencies:

    sudo pacman -Syu
    sudo pacman -S base-devel cmake scons clang llvm boost leveldb crypto++ qt5-base qt5-webengine qt5-quick1 jsoncpp
    pacaur -Syua
    pacaur -S core/gmp extra/boost-libs community/miniupnpc core/curl aur/libjson-rpc-cpp community/libmicrohttpd core/readline aur/v8-3.15 core/libedit aur/argtable extra/mesa extra/ocl-icd community/opencl-headers extra/gperftools extra/qt5-declarative extra/qt5-webkit aur/libtinfo aur/libcpuid-git
    3) Compile from source:

    git clone --recursive https://github.com/ethereum/webthree-umbrella
    cd webthree-umbrella
    mkdir build
    cd build
    cmake ..
    make -j $(nproc)
    https://github.com/ethereum/webthree-umbrella/wiki/Building-on-ArchLinux
  • ordoeordoe tehranMember Posts: 132 ✭✭
    I took over the orphaned ArchLinux packages and fixed them.

    https://aur.archlinux.org/packages/ethereum/
    https://aur.archlinux.org/packages/ethereum-git/

    Any comments welcome.
  • cRaZy_bisCuiTcRaZy_bisCuiT Member Posts: 2
    Is there a way to get v8-3.15 up and running? The Google Code SVN repo is dead. The project seems to have switched to github. I can't find v8-3.15 anywhere over there. Any ideas? The whole documentation does not make sense like that.
Sign In or Register to comment.