Moved here from cpp-ethereum
According to the Ubuntu build page,
The best supported platform as of December 2014 is Ubuntu 14.04, 64 bit, with at least 2 GB RAM
Doesn't appear, in any use of English I'm familiar with, to say that 32-bit is not supported, and I can imagine no reason why ethereum would require any 64-bit functionality, so I optimistically spent a couple of days attempting to build.
I failed.
If anyone has managed in any way to install on 32-bit, please let me know how!
My process was:
git clone https://github.com/ethereum/cpp-ethereum git checkout develop
followed by cmake.
It failed on the llvm 3.8 dependency, but got a little closer after additionally
sudo apt-get install cpp-ethereum
cmake still failed, essentially for the lack of llvm 3.7 / 3.8
I saw a workaround for broken llvm 3.7 /3.8 in evmjit/CMakeLists so I tried git cloning llvm to ~/llvm/build , then
cd ~/cpp-ethereum/ && rm -rf build && mkdir build && cd build cmake .. -DETHASHCL=1 -DOpenCL_INCLUDE_DIR=/usr/include/hwloc -DLLVM_DIR=~/llvm/build/share/llvm/cmake/ make -j2
cmake suceeded, but make failed, giving:
In file included from /home/mimi/llvm/include/llvm/IR/IntrinsicInst.h:30:0, from /home/mimi/cpp-ethereum/evmjit/libevmjit/Arith256.cpp:8: /home/mimi/llvm/include/llvm/IR/Intrinsics.h:40:34: fatal error: llvm/IR/Intrinsics.gen: No such file or directory #include "llvm/IR/Intrinsics.gen" ^ compilation terminated. make[2]: *** [evmjit/libevmjit/CMakeFiles/evmjit.dir/Arith256.cpp.o] Error 1 make[1]: *** [evmjit/libevmjit/CMakeFiles/evmjit.dir/all] Error 2
(apologies for the erratic formatting - this is a digest from paper notes)
Intrinstics.gen appears to be a restating of available number types, but that's way beyond me (anyone with a little experience might say that I'd reached and passed the 'way beyond me' stage earlier than that in any case ;)
So, where are we here?
It seems to me that the build fails on what appears to me to be a not-particularly-necessary dependency on llvm at 3.7 / 3.8, which are not available in any repositories I've found (apart from 64bit ubuntu).
On the other hand, though if I'm right, the root cause is trivial, fixing that problem is way beyond me (I guess it inolves sanitising the C code to make it backwards-compatible?) and it seems strange that there is apparently a whole ethereum ecosystem starting up and that all of those involved have spare 64-bit machines to turn over to testing it, so I'm guessing someone somewhere knows an easy way to install on a 32-bit machine.
My 32-bit machine is going to be dedicated (for now) to ethereum, so I am happy to choose (or complie) the OS to suit,