We are about to release SON Bitcoin Sidechain solution on the Peerplays blockchain. One of the quirks to support various Bitcoin related operations now involved in the core blockchain code is the supprot for ZMQ. Those who are trying to compile and run the SON will receive the following:
./witness_node: error while loading shared libraries: libzmq.so.5: cannot open shared object file: No such file or directory
I am sure lot of people will run into this Bitcoin related error and may take a while to realise what the error is all about. The fix is just to make sure you have ZMQ.
apt -y install libzmq3-dev
Will the error.
Why do we need ZeroMQ ?
We are using ZeroMQ to receive the transactions from the Bitcoin network. The SON aka Sidechain Operator Nodes will be listening (yes, continuously!) on the Bitcoin network and looking for the transactions. These transactions are queued on the queue and the nodes process them. If the designated, decentralized nodes find transactions intended for addresses on the Peerplays blockchain, they will process them and upon the decentralised nodes reaching consensus, it will be processed. All this happens in a trustless and decentralised manner.
(Note the ZMQ ports used in the default config file)
More to follow!
If you are interested in testing this cool piece of technology, we have preview builds available at https://gitlab.com/PBSA/peerplays/-/jobs/467384788/artifacts/download & handy documentation at https://peerplays.gitbook.io/community-project-docs/son/quick-setup-notes