-
Notifications
You must be signed in to change notification settings - Fork 3
Building on Windows
Create fresh ubuntu 14.04 (Trusty Tahr) VM:
http://cdimage.ubuntu.com/trusty/daily-live/current/trusty-desktop-amd64.iso
See http://ubuntu.com for more details on installing Ubuntu.
Set up a crossbuild environment as described in Setting-up-prebuilt-crossbuild-environment, or for full instructions on how to set up the environment from scratch, Setting-up-crossbuild-environment-from-scratch.
Build cpp-ethereum:
$ git clone https://github.com/ethereum/cpp-ethereum
$ mkdir cpp-ethereum-build
$ cd cpp-ethereum-build
$ cmake ../cpp-ethereum -DTARGET_PLATFORM=w64
$ make
$ cd ..
Ensure you have installed:
- Visual Studio Express 2013. VS 2013 is a minimum as cpp-ethereum uses languages features not supported in 2012. The Professional edition should also work, but this has not been tested.
- Windows 7 SDK or Windows 8 SDK - for files like winsock2.h and gdi32.lib
- Python. Needed to compile Qt.
- Perl. Needed to compile Qt (they suggest ActiveState Perl).
- Ruby. Needed to compile Qt.
- Git for Windows 1.9.0+. This includes (among other things) git and curl which are needed for bootstrap.sh.
- Make sure a newer perl installation is on the PATH, otherwise QtWebkit will fail to compile when it picks up the git installed perl. bootstrap.sh should (hopefully) automatically juggle the paths correctly.
- Note that msysgit version 1.9.4-preview20140815 (the current one at moment of writing) includes a bug which prevents
git svn
from working, breaking the bootstrap script. The bug report contains a workaround using rebase. - 7-Zip.
Ensure 7z.exe, perl.exe, python.exe and ruby.exe have been added to the PATH.
Execute the following commands within a Git Bash shell to download and compile Ethereum and all it's dependencies to the current directory:
$ curl -o bootstrap.sh -L https://raw.github.com/ethereum/cpp-ethereum/develop/windows/bootstrap.sh
$ ./bootstrap.sh
This will fetch about 300MB of sources and take many hours to compile (mostly Qt). It should then be possible to compile and debug by opening Ethereum.sln with Visual Studio 2013. Executing bootstrap.sh again should only be necessary if in future Ethereum requires additional libaries that weren't compiled in the previous run. Note that bootstrap.sh has been heavily updated since 22/04/2013, so a clean run is required from earlier versions. If Qt apps are not required, then it should be possible to edit bootstrap.sh to skip this stuff and save a lot of time.
- Building on Linux
- Building on MacOS
- Building on Windows
- Compatibility Info and Build Tips
- Serpent LLL Only Build
- LLL PoC 6
- [LLL Examples for PoC 6](LLL Examples for PoC 5)
- PoC 6 JS API
- Client Development with PoC 6
- MetaCoin API
- Exchange API
- Name Registration API
- Coins API