Qtum Documentation
  • Qtum Features and Advances
    • Qtum Ordinals
      • Chapter 1: Introduction to ordinals
      • Chapter 2: Understanding Inscriptions in Depth
      • Chapter 3: The Intricacies of Ordinals on the Blockchain
      • Chapter 4: Engineering Ordinals within Qtum's Architecture
      • Chapter 5: Prerequisites for Engaging with Ordinals on Qtum
      • Chapter 6: The Procedure for Inscribing a Satoshi with Ordinals
      • Inscribing Messages on Qtum Testnet
    • Qtum-BIP38
  • Qtum Wallet
    • Qtum-Core Wallet Documentation
      • Qtum Documentation
      • Using Qtum Wallet
      • Linux Repositories
      • Qtum on Raspberry Pi
      • How to Update Qtum
      • Qtum Wallet Best Practices
      • Qtum Wallet Commands
      • Adding Nodes To Qtum Wallet
      • Encrypt & Unlock Qtum Wallet
      • Recovery wallet data with salvagewallet
      • Testnet User Guide
      • Bech32 Addresses support
      • How to Add Options (Config)
      • How to use Bootstrap
  • Staking and Nodes
    • Secure Staking With Qtum Star Network
    • Staking Documentation
      • Qtum Staking
      • Offline Staking
      • Offline Staking Address Delegation - Undelegation Transaction Details
      • Qtum on AWS ec2
      • Staking with a VPS
      • Staking with a Raspberry Pi
  • Other Wallets
    • Wallets Supporting Qtum
      • Electrum
      • Qtum Web Wallet
      • Qtum Lightning Network
  • RPC CALLS AND API
    • QTUM RPC CALLS
    • QTUM RPC API
  • Qtum Deployment
    • Guidance on Qtum Deployment
    • Building Qtum on Linux
    • Guidance for Exchange Deployment
  • Smart Contracts and QRC20 Tokens
    • QRC20 Token integration
    • QRC20 Integration Technical Guide
    • Raw QRC20 Transaction implementation guide
  • WEB3
    • Web3 Compatibility Layer
    • Janus Docker Container
    • Truffle
    • Differences between EVM chains
  • QNEKT
    • QNEKT
    • Why Fork Metamask ?
    • Sideloading Qnekt
    • Setting up QNEKT
    • Working with Testnet Coins on QNEKT
    • Connecting QNEKT to regtest
    • QNEKT Regtest with react-box
  • Research
    • Confidential Assets
    • Data Analytics
Powered by GitBook
On this page
  • Building Qtum Core on Debian/Ubuntu
  • Compiling Qtum Core from source
  • Running Qtum Core
  • QRC20 Tokens on Qtum Core
  • Enabling Log events
  • Build Qtum on CentOS 7
  • General Prerequisites
  • Install development tools and libraries
  • Building Qtum
  1. Qtum Deployment

Building Qtum on Linux

Building Qtum Core on Debian/Ubuntu

Installing dependencies (This will work for Ubuntu and Debian)

sudo apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils git cmake libboost-all-dev libgmp3-dev

Compiling Qtum Core from source

From Github source:

git clone https://github.com/qtumproject/qtum --recursive
cd qtum && make -C depends/
DEPENDS="$(pwd)/depends/x86_64-pc-linux-gnu"
./autogen.sh
./configure --prefix=$DEPENDS
make
make install

This will install all the Qtum binaries on depends/x86_64-pc-linux-gnu

From a release file:

wget https://github.com/qtumproject/qtum/archive/refs/tags/mainnet-fastlane-v0.20.2.tar.gz
tar -xpf mainnet-fastlane-v0.20.2.tar.gz && cd qtum-mainnet-fastlane-v0.20.2 
git clone --recursive https://github.com/qtumproject/cpp-eth-qtum.git src/cpp-ethereum
make -C depends/
DEPENDS="$(pwd)/depends/x86_64-pc-linux-gnu"
./autogen.sh
./configure --prefix=$DEPENDS
make
make install

This will install all the Qtum binaries on depends/x86_64-pc-linux-gnu

Running Qtum Core

Type from a terminal:

qtumd -daemon

Also, make sure to create a qtum.conf with your credentials if needed for accessing RPC calls.

This is a sample qtum.conf file

rpcuser=qtum
rpcassword=coin
server=1
rpcallowip=127.0.0.1
logevents=1
daemon=1

QRC20 Tokens on Qtum Core

Enabling Log events

add logevents=1 to the qtum.conf file before launching the daemon

Run Qtum like this:

qtumd -daemon -logevents -txindex=1

If Qtum has already synced, you'll need to reindex blocks:

qtumd -daemon -reindex

Build Qtum on CentOS 7

CentOS is an enterprise-oriented Linux distribution, that means it's focused for stability and security but not necessarily the latest software. With that being said, you cannot currently build Qtum in CentOS 7 following the steps that other more recent distributions can use.

In this document we'll show how to build Qtum in CentOS 7 and produce a static binary which can then be executed on any other Linux distribution, even if it's more recent.

General Prerequisites

Update Yum repositories

    sudo yum update

Install development tools and libraries

Getting ready:

sudo yum install -y tar unzip git which wget patch make autoconf automake libtool \
    epel-release centos-release-scl centos-release-scl-rh finduitls vim mc openssl-devel \
    file

Enable Devtoolset-7

yum install -y devtoolset-7-gcc* && \
    echo "source scl_source enable devtoolset-7" >> /root/.bashrc
source scl_source enable devtoolset-7

Clone Qtum Github source:

git clone --recurse-submodules --depth 1 https://github.com/qtumproject/qtum

Building Qtum

cd qtum && make -C depends/
DEPENDS="$(pwd)/depends/x86_64-pc-linux-gnu"
./autogen.sh
./configure --prefix=$DEPENDS
make

Please keep in mind, this will produce a static build and it will take longer than a normal build.

PreviousGuidance on Qtum DeploymentNextGuidance for Exchange Deployment

Last updated 1 year ago