To install cpp-ethereum, I followed the below steps given in the ethereum community forum:

sudo apt-add-repository ppa:george-edison55/cmake-3.x
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 - ://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -
sudo add-apt-repository "deb //llvm.org/apt/trusty/ llvm-toolchain-trusty 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
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.8-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
git clone ://github.com/ethereum/cpp-ethereum-cmake
git clone https://github.com/ethereum/cpp-ethereum
cd cpp-ethereum
git checkout master
mkdir build && cd build && cmake .. && make -j2

Everything is fine up to cmake ..

When I do the make then it build 10% percentage and giving the following errors:

CallInst *CreateCall(Function *Callee, ArrayRef<Value *> Args,
/usr/lib/llvm-3.8/include/llvm/IR/IRBuilder.h:1566:13: note:   no known 
conversion for argument 2 from ‘<brace-enclosed initializer list>’ to ‘llvm::ArrayRef<llvm::Value*>’
/home/iiita/cpp-ethereum/evmjit/libevmjit/Arith256.cpp: In member function 
‘llvm::Function* dev::eth::jit::Arith256::getExpFunc()’:
/home/iiita/cpp-ethereum/evmjit/libevmjit/Arith256.cpp:408:25: error: ‘class
llvm::Argument’ has no member named ‘getNextNode’
   auto exponent = base->getNextNode();
make[2]: *** [evmjit/libevmjit/CMakeFiles/evmjit.dir/Array.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[  8%] Built target scrypt
[  8%] Built target secp256k1
[  8%] Automatic moc for target ethash-cl
make[2]: *** [evmjit/libevmjit/CMakeFiles/evmjit.dir/Arith256.cpp.o] Error 1
[  8%] Built target ethash-cl_automoc
[  9%] Automatic moc for target ethash
[  9%] Built target ethash_automoc
[ 11%] Built target jsengine
[ 11%] [ 11%] Built target jsonrpcstub
Generating qrc_natspec.cpp
Scanning dependencies of target testeth_automoc
[ 12%] Scanning dependencies of target natspec
Automatic moc for target testeth
[ 12%] Built target testeth_automoc
Scanning dependencies of target createRandomTest_automoc
[ 13%] [ 13%] Building CXX object libnatspec/CMakeFiles/natspec.dir/NatspecExpressionEvaluator.cpp.o
Automatic moc for target createRandomTest
[ 13%] Built target createRandomTest_automoc
[ 13%] Generating qrc_js.cpp
Scanning dependencies of target jsqrc
[ 13%] Building CXX object libjsqrc/CMakeFiles/jsqrc.dir/qrc_js.cpp.o
Linking CXX static library libjsqrc.a
[ 13%] Built target jsqrc
[ 13%] Building CXX object libnatspec/CMakeFiles/natspec.dir/qrc_natspec.cpp.o
make[1]: *** [evmjit/libevmjit/CMakeFiles/**evmjit**.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Linking CXX shared library libnatspec.so
[ 13%] Built target natspec
make: *** [all] Error 2

1 Answer 1


I read your installation instructions and can only guess you have found a very old resource. The ethereum forum is very old and a lot of dead weight can be found over there.

What you are looking for is the Ethereum Documentation which you can find here: http://www.ethdocs.org/

To install cpp-ethereum, all you need to do is the following:

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install cpp-ethereum


If you insist on building from source, please follow this guide.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.