linux下從原始碼編譯比特幣客戶端
下載原始碼
- 這個是master分支的,建議在tag裡選最新的穩定版,目前是v0.14.2
- 直接下載zip,別clone了,clone很慢。
編譯程式碼
不妨先看看官方的編譯說明
ps:
第一手的官方的資源一般都是最好的,有問題了最好先從官方資源入手,而不是從網上搜索二手、三手的。所以我建議每個在網上寫攻略、教程、學習筆記的人,都說明下知識原處,而學習的人一定要找第一手資源,其他的作為參考,畢竟誤讀幾乎是不可避免的。
unix系統的編譯說明在doc目錄下。
整個說明大致分為這部分:
- 怎麼編譯
- 依賴項說明
- 依賴項的安裝
依賴項的安裝
通讀一下依賴項的說明,大致瞭解下需要哪些依賴項,哪些是可選的哪些是必須的之後,就先準備編譯依賴項。
根據自己的系統在文件裡找相應的部分,我這裡是debian,Fedora、FreeBsd、Arch Linux的自己找對應的。
一般項
apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils
boost 相關
可以只安裝用到的庫
apt-get install libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev
也可以全裝,也就130M
apt-get install libboost-all-dev
BerkeleyDB
這裡debian和ubuntu有點小區別,ubuntu的可以參考文件。我這裡debian 9用的163的源。
apt-get install libdb-dev
apt-get install libdb++-dev
這個裝完對應的BerkeleyDB版本貌似是6.x,和系統配置的不一樣,後面配置的時候需要多帶個–with-incompatible-bdb選項
zmq可裝可不裝
apt-get install libzmq3-dev
qt5以及protobuf
apt-get install libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler
編譯
配置生成makefile
./autogen.sh
./configure –with-incompatible-bdb
可以檢視所有選項,我這邊就關掉了test模組
./configure –helo
./configure –with-incompatible-bdb –disable-tests
make
make
make install
檢查是否安裝成功
可以使用which bitcoind
也可以直接啟動客戶端試試
bitcoin-qt
客戶端啟動後會要你設定一個數據目錄,這個建議設到其他盤。程式啟動看一下就好了,下載全部區塊資料要120G…