最近想研究下比特幣源碼愿汰,首先得安裝下編譯環(huán)境裁眯,我首先按源碼中build-osx.md文檔中在mac中設(shè)置了下環(huán)境生年。過程一點(diǎn)也不順利啤咽。好不容易把該下載的文件下載完了晋辆。并且安裝后。在編譯源碼過程中宇整。出現(xiàn)了各種錯(cuò)誤瓶佳。
后來通過 菜菜子 的文章 http://www.reibang.com/p/8b4ebd0e4b3d?utm_campaign=hugo&utm_medium=reader_share&utm_content=note&utm_source=weixin-friends 開始在linux平臺(tái)中進(jìn)行設(shè)置.
步驟一:
結(jié)果在 sudo apt-get install build-essential libtoolautotools-dev autoconf pkg-config libssl-dev 這條命令出了錯(cuò),錯(cuò)誤信息是"無法定位軟件包 libtoolautotools"鳞青。這種問題對(duì)于linux小白的我來說涩哟,還是很郁悶的。但是通過網(wǎng)上找些問題 發(fā)現(xiàn)了其中了問題 盼玄。原來菜菜子把 libtool autotools 寫連了,分開即可。
步驟二:
按上面步驟安裝完了之后潜腻。開始下載源碼埃儿。發(fā)現(xiàn)沒安裝git..安裝git的命令行是:
sudo apt install git.
步驟三:
然后下載比特幣源碼:git clone https://github.com/bitcoin/bitcoin.git 。我裝源碼安裝在了文檔目錄下.
步驟四:
開始安裝berkeley-db(伯克利 數(shù)據(jù)庫):Berkeley DB是一個(gè)開源的文件數(shù)據(jù)庫融涣,介于關(guān)系數(shù)據(jù)庫與內(nèi)存數(shù)據(jù)庫之間童番,使用方式與內(nèi)存數(shù)據(jù)庫類似精钮,它提供的是一系列直接訪問數(shù)據(jù)庫的函數(shù),而不是像關(guān)系數(shù)據(jù)庫那樣需要網(wǎng)絡(luò)通訊剃斧、SQL解析等步驟轨香。
在bitcoin目錄下建立文件夾db4:
cd bitcoin
mkdir db4
然后下載berkeley-db安裝包:
wget 'http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz'?
我安裝這個(gè)版本的berkeley挺順利的。如果不順利幼东,可以嘗試下載
wget 'http://download.oracle.com/berkeley-db/db-6.2.32.NC.gz'
這個(gè)版本的數(shù)據(jù)庫臂容。
接下來就是解壓和編譯:
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
我在 make install 的時(shí)候出現(xiàn)了錯(cuò)誤信息: mkdir:無法創(chuàng)建目錄"home/theusername":權(quán)限不夠 makefile:933:recipe for target 'install_setup' failed。這就郁悶了根蟹。百度查了一下脓杉。結(jié)果也不能解決這個(gè)問題。最后還是問了下“菜菜子”老師简逮。其實(shí)非常簡(jiǎn)單球散。這個(gè)“權(quán)限不夠”,是要用管理員權(quán)限散庶。改為:
sudo make install .
完美解決蕉堰,心里有點(diǎn)小激動(dòng)。接下來就要裝比特幣的客戶端了悲龟。首先進(jìn)入bitcoin目錄下屋讶。
cd ..
cd ..
cd ..
./autogen.sh
./configure LDFLAGS="-L/home/theusername/bitcoin/db4/lib/" CPPFLAGS="-I/home/theusername/bitcoin/db4/include/"
結(jié)果這個(gè)命令又出問題了。報(bào)出的錯(cuò)誤信息是:configure:error:openssl not found
沒找到openssl,但我是有安裝的躲舌。百度查了下丑婿。說是要安裝開發(fā)版。接著執(zhí)行下面的命令:
sudo apt-get install libsll-dev
安裝成功后接著執(zhí)行上面的配置命令没卸,又報(bào)出了一個(gè) “l(fā)ibevent not found"的錯(cuò)誤羹奉。真是不順利呀。接著安裝這個(gè)庫吧:sudo apt-get install libevent-dev约计。安裝成功后诀拭,接著執(zhí)行配置命令:./configure LDFLAGS="-L/home/theusername/bitcoin/db4/lib/" CPPFLAGS="-I/home/theusername/bitcoin/db4/include/" 這次終于順利執(zhí)行完了。眼淚都快出來了煤蚌。平復(fù)下心情耕挨。接著執(zhí)行下面的命令。
make
sudo make install
終于順利完成尉桩。眼淚嘩嘩的筒占。
步驟五:
那怎樣證明安裝成功了呢。我們通過以下兩個(gè)命令行進(jìn)行驗(yàn)證:
$ which bitcoind
/usr/local/bin/bitcoind
$ which bitcoin-cli
/usr/local/bin/bitcoin-cli
結(jié)果正常輸出了蜘犁。終于完成了進(jìn)入比特幣源碼世界的第一步了翰苫。
區(qū)塊鏈研習(xí)社比特幣源碼研讀班,black