在CentOS 7上編譯Qtum

在CentOS上編譯Qtum是一件很是麻煩的事情,由於CentOS提供的boost庫過於老舊。而咱們須要本身去手動編譯boost庫。python

準備工做

添加epel-release倉庫,而後安裝一些編譯工具:c++

sudo yum install epel-release gcc-c++ git
複製代碼

編譯Boost

咱們須要至少1.58.0版本的boost庫來編譯Qtum,可是CentOS 7上只提供了1.53.0版本如下的boost,咱們能夠選擇手動編譯。git

首先咱們須要安裝一些依賴:github

sudo yum install python-devel bzip2-devel
複製代碼

而後咱們從GitHub上克隆boost庫:bootstrap

git clone https://github.com/boostorg/boost.git
cd boost
複製代碼

檢出一個發佈版本而且初始化子模塊:bash

git checkout boost-1.58.0
git submodule update --init --recursive
複製代碼

編譯Boost: 你能夠把--prefix--libdir設置爲任意你想要的位置,或者保持默認。可是你須要在編譯和運行Qtum的時候把工具

libdir
添加到 LD_LIBRARY_PATH環境變量中,多少有些麻煩。

# omit the --libdir option for 32-bit systems
./bootstrap.sh --prefix=/usr --libdir=/usr/lib64
./b2 headers
# 你能夠設置-j<N>,其中N是你的電腦的CPU的核心數或線程數。
sudo ./b2 -j4 install
複製代碼

編譯Qtum

安裝依賴:ui

sudo yum install libtool libdb4-cxx-devel openssl-devel libevent-devel
複製代碼

若是你須要編譯Qtum圖形化界面qtum-qt,你還須要安裝這些依賴:spa

sudo yum install qt5-qttools-devel protobuf-devel qrencode-devel
複製代碼

克隆倉庫而且初始化子模塊:線程

git clone https://github.com/qtumproject/qtum.git
cd qtum
git submodule update --init --recursive
複製代碼

配置參數以及編譯:
若是你把boost安裝到了/, /usr, /usr/local之外的路徑,你須要在configure的時候指定--with-boost=/path/to/your/boost,以及把/path/to/your/boost/lib添加到LD_LIBRARY_PATH環境變量。

./autogen.sh
./configure
make -j4複製代碼
相關文章
相關標籤/搜索