Staking Tutorial – Raspberry PI

How to set up the Radium Core Wallet for Raspberry Pi

 

Step 1. Download the wallet source code

1.)     Go to https://github.com/RadiumCore/radium-0.11/releases to find the latest release

2.)     Download “Source code (tar.gz)”

3.)     Unzip the file in a folder of your choice on the Pi. In this guide we will assume that it was unzipped in the folder /home/pi/Desktop/Radium

Step 2. Install necessary packages

1.)     Start by making sure all your repositories are up to date. Type the following in the command console

sudo apt-get update

2.)     Install other necessary packages by copy-pasting this in the console

sudo apt-get install qt5-default qt5-qmake qtbase5-dev-tools qttools5-dev-tools build-essential libboost-dev libboost-system-dev libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev libssl-dev libdb++-dev libminiupnpc-dev

3.)     Wait for it to finish. This can take a while.

Step 3: Compile the wallet

1.)     Open the command console and go to the Radium folder. In our case:

cd /home/pi/Desktop/Radium

2.)     Type the following to compile and wait for each step to finish. This can take quite a while so be patient.

sudo qmake
sudo make

Note 1: If you get a permission denied error message, try this in the console before attempting to compile again. First go to the /src/leveldb folder under your Radium folder.

cd /home/pi/Desktop/Radium/src/leveldb 
sudo chmod 755 *

Step 3.1: Workaround Raspbian Stretch

Note 2: Latest version of Raspbian Stretch includes a version of libssl-dev that is incompatible. You will use see something like:

src/bignum.h: In function ‘bool operator>(const CBigNum&, const CBigNum&)’:
src/bignum.h:720:83: error: cannot convert ‘const CBigNum*’ to ‘const BIGNUM* {aka const bignum_st*}’ for argument ‘1’ to ‘int BN_cmp(const BIGNUM*, const BIGNUM*)’
 erator>(const CBigNum& a, const CBigNum& b)  { return (BN_cmp(&a, &b) > 0); }
 
Makefile:1291: recipe for target 'build/txdb-leveldb.o' failed

Here is how to workaround this (steps from https://github.com/stratisproject/stratisX/issues/33)

  1. Remove the current version of libssl-dev ( 1.1.0f-3 ) sudo apt-get remove libssl-dev
  2. Set your repository list to point to “jessie” instead of “stretch”, save and exit. sudo nano /etc/apt/sources.list
  3. Then do sudo apt-get update to download the packages for jessie
  4. Then do sudo apt-get install libssl-dev package, it should be version 1.0.1t-1
  5. Then do sudo make
  6. When complete, type sudo apt-mark hold libssl-dev to make the package to not upgrade in the future
  7. Switch back your sources, by changing ‘jessie’ back to ‘stretch’ in number 2
  8. Do a sudo apt-get update and sudo apt-get upgrade and make sure it doesn’t try and install libssl-dev (it will say it has been kept back)
  9. Continue with guide!

Step 4: Run the wallet

1.)     After compiling completes you will find the executable “radium-qt” in the Radium folder.

2.)     Run “radium-qt” to open the wallet.This will create another folder called .radium on your Pi. Here you will find your wallet.dat ++

3.)     Wait for the blockchain to sync. You can speed up this process by download a bootstrap (basically a recent copy of the blockchain) from here: http://cryptochainer.com and unzipping the zip file in the .radium folder (NOT the folder where your radium-qt is)