All Projects → UCHAIN-WORLD → Uchain Fullnode

UCHAIN-WORLD / Uchain Fullnode

Licence: agpl-3.0
UChain Cross-Platform C++ Full-Node Wallet Implementation

Projects that are alternatives of or similar to Uchain Fullnode

ZeroMQ
🚀 Client/Server & Pub/Sub Examples with ZeroMQ & Boost
Stars: ✭ 33 (-75.19%)
Mutual labels:  zeromq, boost
Cpp Bredis
Boost::ASIO low-level redis client (connector)
Stars: ✭ 117 (-12.03%)
Mutual labels:  boost
Burst
То, чего нет в Бусте
Stars: ✭ 72 (-45.86%)
Mutual labels:  boost
Lzmq
Lua binding to ZeroMQ
Stars: ✭ 110 (-17.29%)
Mutual labels:  zeromq
Compute
A C++ GPU Computing Library for OpenCL
Stars: ✭ 1,192 (+796.24%)
Mutual labels:  boost
Zproc
Process on steroids
Stars: ✭ 112 (-15.79%)
Mutual labels:  zeromq
Hazelcast Cpp Client
Hazelcast IMDG C++ Client
Stars: ✭ 67 (-49.62%)
Mutual labels:  boost
Pyb00st
Python for LEGO BOOST
Stars: ✭ 125 (-6.02%)
Mutual labels:  boost
Callable traits
modern C++ type traits and metafunctions for callable types
Stars: ✭ 116 (-12.78%)
Mutual labels:  boost
Boost Process
Boost.Process is a library to manage system processes
Stars: ✭ 110 (-17.29%)
Mutual labels:  boost
Graphical Debugging
GraphicalDebugging extension for Visual Studio
Stars: ✭ 88 (-33.83%)
Mutual labels:  boost
Realtime Rails
Realtime rails support. See website for documentation:
Stars: ✭ 77 (-42.11%)
Mutual labels:  zeromq
Test
The reference C++ unit testing framework (TDD, xUnit, C++03/11/14/17)
Stars: ✭ 112 (-15.79%)
Mutual labels:  boost
Dir monitor
Filesystem changes monitor using boost::asio © Boris Schaeling
Stars: ✭ 73 (-45.11%)
Mutual labels:  boost
Notes
let me know if my notes help you :D (it's a mess, I know)
Stars: ✭ 119 (-10.53%)
Mutual labels:  zeromq
Bokeh
Bokeh is a simple, scalable and blazing-fast task queue built on Node.js and ZeroMQ.
Stars: ✭ 67 (-49.62%)
Mutual labels:  zeromq
Rzmq
R package for ZMQ
Stars: ✭ 83 (-37.59%)
Mutual labels:  zeromq
Cpp Rotor
Event loop friendly C++ actor micro-framework
Stars: ✭ 111 (-16.54%)
Mutual labels:  boost
Setup
Setup a new machine without sudo!
Stars: ✭ 130 (-2.26%)
Mutual labels:  boost
Gil
Boost.GIL - Generic Image Library | Requires C++11 since Boost 1.68
Stars: ✭ 122 (-8.27%)
Mutual labels:  boost

AGPL v3

UC Project

UChain is the first public infrastructure blockchain specifically designed for the global sharing economy. Along with other sharing economy enterprises, UChain aims to build its underlying blockchain network to solve the current problems of trust and data abuse. Exercising API's and SDK's provided by UChain , all sharing economy enterprises are able to issue their own token and build their application on top of the UChain network, together making UChain a better global autonomous sharing economy ecosystem.
UC is implemented based on libbitcoin project and ICE project.Also ZeroMQ,secp256k1,miniupnpc and boost are necessary.

UC Achitect

image

Build UC

Compiler requirements

Compilier Minimum Version
gcc/g++ 5.0
clang++ 3.4 (8.0.0)

C++ compiler support C++14. Using c++ -v to check c++ version.

Dependencies of UC are static linked (including libstdc++). Thus, there is no extra dependency after compilation. Recommends Ubuntu 16.04/CentOS 7.2/MinGW to develop/debug/build UC.

Toolchain requirements

  • cmake 3.0+
  • git
  • automake (speck256k1/ZeroMQ required)
  • make (MinGW for Windows is supported)
$ yum/brew/apt-get install git cmake
$ yum/brew/apt-get install autoconf automake libtool pkg-config

Library Dependencies

Needs to configure Library Dependencies firstly. Installing by bash script (sudo required).

$ chmod +x ./install_thirdlibrary
$ sudo ./install_thirdlibrary

By default, ./install_thirdlibrary will install ZeroMQ secp256k1.
You can install more by specify arguments, for example:

# --build-upnpc is needed is you want UPnP supporting.
$ sudo ./install_thirdlibrary --build-boost --build-upnpc

boost 1.60(boost is required and 1.60 is recommended)

$ sudo yum/brew/apt-get install libboost-all-dev

ZeroMQ 4.2.5+(required)

Modules server/explorer required.

$ wget https://github.com/zeromq/libzmq/releases/download/v4.2.5/zeromq-4.2.5.tar.gz
$ tar -xzvf zeromq-4.2.5.tar.gz
$ cd zeromq-4.2.5
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install && sudo ldconfig

secp256k1(required)

Modules blockchain/database required.

$ git clone https://github.com/UCHAIN-WORLD/secp256k1
$ cd secp256k1
$ ./autogen.sh
$ ./configure --enable-module-recovery
$ make
$ sudo make install && sudo ldconfig

miniupnpc(if needed)

Modules blockchain/network with UPnP function required.

$ wget http://miniupnp.tuxfamily.org/files/miniupnpc-2.0.tar.gz
$ tar -xzvf miniupnpc-2.0.tar.gz
$ cd miniupnpc-2.0
$ make
$ sudo INSTALLPREFIX=/usr/local make install && sudo ldconfig

Build UC

$ git clone https://github.com/UCHAIN-WORLD/uchain-fullnode.git
$ cd UChain && mkdir build && cd build
$ cmake ..
$ make
$ make install

If you do not need UPnP support, you can use "cmake -DUSE_UPNP=OFF .." to disable it.
And "make -j4" may be better (-j4 is not always the rigth parameter... could be j2 or j8 it depends by the cpu).
Also "make install-strip" may be better(it strips).

Run UC

After UC is built successfully, there are two executable files in the bin directory:

  • ucd - server program
    Runs a full UChain node in the global peer-to-peer network.

  • uc-cli - client program
    Sent your request to the server, the server will process it and return response to your client.

Go to bin diretory, and run the program. More information please reference to Command line usage.

$ cd bin
$ ./ucd
$ ./uc-cli $command $params $options
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].