Requirements
Environment
SCF
currently targets Linux environments such as Ubuntu and Alpine. It has been tested on Alpine and Ubuntu x86_64
architecture. Support for other architectures hasn’t been tested, but supporting such architectures will require adding/verifying support for them on Suil/Libmill.
- Linux OS
C++2a
the build is continuously tested withgcc-10.2
but any othergcc
compiler version that supportsC++2a
should work, otherwise the effort to make it work will be minimal- Target compilation CPU should be
x86_64
. Other target’s haven’t been tested
Dependencies
- Build Essential
- CMake CMake is used to generate targets of this project. I have only ever target Unix Makefiles generator, users are welcome to try other targets possible on Linux & GCC and provide feedback accordingly.
The following libraries presented in an typical apt
package install command are required for development on Ubuntu or similar OS.
apt-get update
apt-get install sqlite3 libsqlite3-dev libpq-dev postgresql \
postgresql-server-dev-all uuid-dev openssl1.0 libssl1.0-dev \
libzmq3-dev git
bitcoin-core/secp256k1 is also required to build the crypto module. Follow installation instructions from the linked GitHub repo
This dependencies are just a hint on tested environments. Different environments might require different tool chains or libraries. Leaving that up to the developer to figure out. That being said, development on Linux has been simplified by providing docker images that can readily build this project. See Develop With Docker for more information on development options with docker