Development Setup on macOS
The following instructions will guide you from a clean installation of macOS to a working source checkout of raiden. Make sure that you are on OSX 10.12 or higher. This is needed since raiden uses the MONOTONICK_CLOCK_RAW attribute as seen here
Install C/C++ compiler infrastructure:
$ xcode-select --install
Click “Install” then “Agree”, wait for installation to complete
Install Homebrew (a macOS package manager):
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Follow the instructions
Obtain a MONOTONIC_CLOCK_RAW compatible python version
The precompiled Python versions for download on python.org are built on a too old macOS version which are not compatible with
MONOTONIC_CLOCK_RAW
. As such you will have to manually obtain a python binary that supports it. There are three ways to achieve this:Install system packages needed for
raiden
and its dependencies:$ brew install automake gmp leveldb libffi libtool openssl pkg-config
Install pip (a Python package manager):
$ sudo easy_install pip
Install virtualenv:
$ sudo pip install virtualenv
Create a virtualenv for raiden (requires python3.8):
$ virtualenv --python=python3.8 venv-raiden
“Activate” the virtualenv:
$ source venv-raiden/bin/activate
Clone the raiden repository:
$ git clone https://github.com/raiden-network/raiden.git
Install the dependencies and make raiden available inside the virtualenv:
$ cd raiden $ make install-dev
Now you have a working source installation of Raiden. To actually use it you also need an Ethereum client, which can be installed as follows:
$ brew tap ethereum/ethereum
$ brew install ethereum
The installation should now be complete. To ensure your setup is working correctly you can use the
smoketest
command:
$ raiden smoketest