設定編譯比特幣原始碼-linux
最近想研究下比特幣原始碼,首先得安裝下編譯環境,我首先按原始碼中build-osx.md文件中在mac中設定了下環境。過程一點也不順利。好不容易把該下載的檔案下載完了。並且安裝後。在編譯原始碼過程中。出現了各種錯誤。
後來通過 菜菜子 的文章 http://www.jianshu.com/p/8b4ebd0e4b3d?utm_campaign=hugo&utm_medium=reader_share&utm_content=note&utm_source=weixin-friends 開始在linux平臺中進行設定.
步驟一:
結果在 sudo apt-get install build-essential libtoolautotools-dev autoconf pkg-config libssl-dev 這條命令出了錯,錯誤資訊是"無法定位軟體包 libtoolautotools"。這種問題對於linux小白的我來說,還是很鬱悶的。但是通過網上找些問題 發現了其中了問題 。原來菜菜子把 libtool autotools 寫連了,分開即可。
步驟二:
按上面步驟安裝完了之後。開始下載原始碼。發現沒安裝git..安裝git的命令列是:
sudo apt install git.
步驟三:
然後下載比特幣原始碼:git clone https://github.com/bitcoin/bitcoin.git 。我裝原始碼安裝在了文件目錄下.
步驟四:
開始安裝berkeley-db(伯克利 資料庫):Berkeley DB是一個開源的檔案資料庫,介於關聯式資料庫與記憶體資料庫之間,使用方式與記憶體資料庫類似,它提供的是一系列直接訪問資料庫的函式,而不是像關聯式資料庫那樣需要網路通訊、SQL解析等步驟。
在bitcoin目錄下建立資料夾db4:
cd bitcoin
mkdir db4
然後下載berkeley-db安裝包:
wget 'http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz'
我安裝這個版本的berkeley挺順利的。如果不順利,可以嘗試下載
wget 'http://download.oracle.com/berkeley-db/db-6.2.32.NC.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
我在 make install 的時候出現了錯誤資訊: mkdir:無法建立目錄"home/theusername":許可權不夠 makefile:933:recipe for target 'install_setup' failed。這就鬱悶了。百度查了一下。結果也不能解決這個問題。最後還是問了下“菜菜子”老師。其實非常簡單。這個“許可權不夠”,是要用管理員許可權。改為:
sudo make install .
完美解決,心裡有點小激動。接下來就要裝比特幣的客戶端了。首先進入bitcoin目錄下。
cd ..
cd ..
cd ..
./autogen.sh
./configure LDFLAGS="-L/home/theusername/bitcoin/db4/lib/" CPPFLAGS="-I/home/theusername/bitcoin/db4/include/"
結果這個命令又出問題了。報出的錯誤資訊是:configure:error:openssl not found
沒找到openssl,但我是有安裝的。百度查了下。說是要安裝開發版。接著執行下面的命令:
sudo apt-get install libsll-dev
安裝成功後接著執行上面的配置命令,又報出了一個 “libevent not found"的錯誤。真是不順利呀。接著安裝這個庫吧:sudo apt-get install libevent-dev。安裝成功後,接著執行配置命令:./configure LDFLAGS="-L/home/theusername/bitcoin/db4/lib/" CPPFLAGS="-I/home/theusername/bitcoin/db4/include/" 這次終於順利執行完了。眼淚都快出來了。平復下心情。接著執行下面的命令。
make
sudo make install
終於順利完成。眼淚嘩嘩的。
步驟五:
那怎樣證明安裝成功了呢。我們通過以下兩個命令列進行驗證:
$ which bitcoind
/usr/local/bin/bitcoind
$ which bitcoin-cli
/usr/local/bin/bitcoin-cli
結果正常輸出了。終於完成了進入比特幣原始碼世界的第一步了。
區塊鏈研習社比特幣原始碼研讀班,black
相關文章
- java編譯、編碼、語言設定Java編譯
- 比特幣原始碼研讀1——下載與編譯比特幣原始碼編譯
- 區塊鏈鼻祖比特幣之13:比特幣原始碼編譯詳解區塊鏈比特幣原始碼編譯
- linux中原始碼編譯安裝Linux原始碼編譯
- 比特幣原始碼研讀(0)bitcoin本地編譯與使用比特幣原始碼編譯
- Linux環境PostGIS原始碼編譯安裝Linux原始碼編譯
- linux下基於官方原始碼編譯ipoptLinux原始碼編譯
- 原始碼編譯Vim 8原始碼編譯
- MongoDB(0)- 原始碼編譯MongoDB原始碼編譯
- 編譯Android原始碼編譯Android原始碼
- 編譯hibernate原始碼編譯原始碼
- Spring原始碼編譯Spring原始碼編譯
- Docker編譯Azerothcore原始碼Docker編譯原始碼
- Linux下通過原始碼編譯安裝程式Linux原始碼編譯
- linux叉編譯工具環境變數設定Linux編譯變數
- 編譯FFMPEG原始碼的指令碼編寫案例編譯原始碼指令碼
- WebRTC研究 (一) 編譯原始碼Web編譯原始碼
- 原始碼編譯 apache2.4原始碼編譯Apache
- Kubernetes原始碼編譯原始碼編譯
- Swift原始碼專案編譯Swift原始碼編譯
- 龍芯原始碼編譯MySQL原始碼編譯MySql
- Ceph原始碼編譯與打包原始碼編譯
- nvme driver 原始碼修改、編譯原始碼編譯
- 原始碼編譯安裝Redis原始碼編譯Redis
- LAMP原始碼編譯安裝LAMP原始碼編譯
- osg原始碼編譯步驟原始碼編譯
- Android原始碼編譯--整理Android原始碼編譯
- XCode 編譯 PAG 原始碼XCode編譯原始碼
- Android原始碼閱讀-編譯8.0原始碼Android原始碼編譯
- Linux中程式包管理及程式的原始碼編譯Linux原始碼編譯
- 《linux原始碼包的編譯安裝》RHEL6Linux原始碼編譯
- Linux下原始碼編譯方式安裝MySQL5.5Linux原始碼編譯MySql
- A40i &T3 全原始碼編譯-ARM Linux核心在PC Linux的編譯方法原始碼編譯Linux
- Vue3原始碼分析——編譯模組和編譯器Vue原始碼編譯
- MySQL5.5原始碼編譯新增編譯備註資訊~MySql原始碼編譯
- 反編譯APK資原始檔與原始碼編譯APK原始碼
- linux上mysql編碼 utf-8設定LinuxMySql
- Linux設定語言編碼(字符集)Linux