Ubuntu 16.04 LTSでGridcoin-Qtをビルド

2018年5月26日(土)

Gridcoin3.7.0.0がリリースされてから1日経ちましたが、公式からもリンクされているDebian/Ubuntu用のパッケージが更新されないので、自分でビルドしてみました。

Ubuntu 16.04 LTSの環境です。
そんなに時間はかからないので、自分でビルドした方が早いかもしれません。

レポジトリからインストールしていた場合はアンインストールしてレポジトリを削除します。

sudo apt remove gridcoinresearch-qt
sudo add-apt-repository --remove ppa:gridcoin/gridcoin-stable

wikiのLinux向けのガイドを見ながらセットアップします。
基本的にはガイドの通りですが、Gridcoin Daemonは使わないので、Qtだけビルドします。

まずはビルドに必要なパッケージをインストールします。

sudo apt -y install ntp git gcc make curl build-essential libssl-dev libdb-dev libdb++-dev libqrencode-dev libcurl4-openssl-dev libzip-dev libzip4 libboost-all-dev
sudo apt -y install qt5-default qttools5-dev-tools libqt5webkit5-dev libminiupnpc-dev

Boost1.55以上が必要らしいですが、Ubuntu 16.04 LTSはlibboost-all-devでBoost 1.58が入るので大丈夫です。

また、ガイドの説明のみだとqmakeのところで”sh: 1: /usr/lib/x86_64-linux-gnu/qt5/bin/lrelease: not found”というエラーで止まるので、qttools5-dev-toolsも追加してあります。
(Bitcoin-Qtの情報が役に立ちました。ビットコイン派生のQtは他のコインの情報も役に立ちます。)

ソースをGithubからクローンします。

cd ~
git clone https://github.com/gridcoin/Gridcoin-Research
cd ~/Gridcoin-Research/

すでにGridcoinをクローン済みでバージョンアップを行う場合、下記を実行します

git fetch --all
git reset --hard origin/master

以前にビルドしたことがあれば、buildディレクトリを空にします。

rm -f build/*

以前にビルドしたことがあれば、一応下記も行っておきます。

make clean

ガイドではqmakeに”USE_UPNP=-“オプションが指定されています。
UPNPは使わないので”USE_UPNP=-“でいいのですが、
どうせ自分でビルドするなら最適化も行いたいのでqmakeは下記で行います。

qmake gridcoinresearch.pro "USE_UPNP=-" "USE_O3=1" "QMAKE_CXXFLAGS+=-march=native" "QMAKE_CFLAGS+=-march=native"

gridcoinresearch.proに記載がある”USE_O3=1″オプションを追加しO3で最適化、さらにCPU向けの最適化も行います。最適化してもPoSの報酬がもらいやすくなったりはしないと思います。気持ちの問題です。

ビルドします。

make -j4
(-j4の数字の部分はCPUのコア数にします)

strip gridcoinresearch
sudo install -m 755 gridcoinresearch /usr/bin/gridcoinresearch

 


バージョンの表記が公式のバイナリはバージョンの後にunkって付いてますが、Githubのcommit idになっていますね。
unkって何だろう、う○こではないだろうけど…。
unknownってことらしいです。


2018/05/26追記
Gridcoin 3.7.12.0-Leisureからビルドの方法が変わりました。