身為一個程序猿,面對用高手編程實現的比特幣,不研究下源碼實在說不過去。廢話少說,直奔主題。第一節是關于比特幣源碼的下載與編譯。
本文的操作都是基于Linux環境進行的。
一 ?基本環境搭建
虛擬機:Oracle VM VirtualBox
Linux版本:ubuntu-16.04.3-desktop-amd64
當然其他版本也行,只要能安裝成功即可。
至于安裝教程,網上一搜一大堆,這里就不給你做伸手黨的機會了。
直接進入第二步源碼下載
二 源碼下載
1. 軟件更新
新下載的Linux系統,建議登錄系統后,先更新下軟件。
左上角search your computer, 輸入 terminal,或者快捷鍵Ctrl+Alt+T, 打開命令行終端,輸入以下命令:
sudo apt-get update
sudo apt-get upgrade
基礎依賴庫下載,輸入以下命令,如果怕打錯,可以直接復制粘貼。
tips: 第三句不要換行執行。
sudo apt-get install build-essential libtool autotools-dev autoconf pkg-config libssl-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libqt5gui5 libqt5core5 libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler
sudo apt-get install libqrencode-dev
sudo apt-get install libminiupnpc-dev
2. 安裝git 工具
比特幣的源碼都是放在Github網站上面的。需要通過git工具下載到本地。執行下面的語句,如果報錯說明系統沒有該工具,需要安裝,已下載的可跳過。
sudo apt install git
3. 下載源碼
接下來就是下載源碼了,
cd ~
git clone https://github.com/bitcoin/bitcoin.git
3. 安裝 berkeley-db4
? ? ? 接著安裝 berkeley-db4,注意路徑是在個人Home目錄,需要進入使用命令 “cd ~”即可。這里用的是4.8版本。
cd ~
mkdir bitcoin/db4/
wget 'http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz'
下載完成后執行下面語句進行安裝
tar -xzvf db-4.8.30.NC.tar.gz
cd db-4.8.30.NC/build_unix/
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=/home/theusername/bitcoin/db4/
make install
此時出現了錯誤,Permission denied,沒有權限創建目錄/home/theusername
所以需要改用root用戶權限來執行
sudo make install
4. 編譯比特幣源碼
cd ~/bitcoin/
./autogen.sh
./configureLDFLAGS="-L/home/theusername/bitcoin/db4/lib/" CPPFLAGS="-I/home/theusername/bitcoin/db4/include/"
make -s -j5
以下截圖是執行前面兩個語句的結果
但是在執行第三條語句的時候報錯了
看錯誤是libevent沒找到,看來是少了libevent庫,上網搜索了下,發現是缺了libevent-dev,安裝上即可。
sudo apt-get install libevent-dev
執行成功
但是執行最后一條語句的時候又報錯了
這個錯誤只是說內部編譯器錯誤,不好定位問題,那就再執行一遍該語句。這次錯誤就很明顯了:Virtual memoryexhausted: Cannot allocate memory. 內存不足,看來是我分配的內存空間不夠。退出Ubuntu后重新分配2G內存。
啟動后進入系統重新執行以下語句:
cd ~/bitcoin/
./autogen.sh
./configure LDFLAGS="-L/home/theusername/bitcoin/db4/lib/" CPPFLAGS="-I/home/theusername/bitcoin/db4/include/"
make
sudo make install
tips: 第四個語句"make"執行了25分鐘左右,需要耐心點哦,這時不妨泡杯茶或沖杯咖啡喝喝,權當中場休息。
5. 檢查結果
我們可以通過詢問系統下面2個可執行文件的路徑,來確認bitcoin是否安裝成功。
$ which bitcoind
正確結果: /usr/local/bin/bitcoind
$ which bitcoin-cli
正確結果:/usr/local/bin/bitcoin-cli
如果是以上兩個都與正確結果相符合,恭喜,比特幣客戶端安裝成功!
啟動客戶端, 看到彈出的Welcome窗口,心情十分雞凍呀。。。
bitcoin-qt
tips: 只打算體驗一下,不打算同步所有數據(畢竟有153G),就不要點擊OK。
區塊鏈研習社源碼研讀班 Jacky
參考資料: