在Mac、Linux平台下面编译比特币源码

下载托管在Github上面的比特币源码。以当前最新的 v0.18.0代码为例。

git clone https://github.com/bitcoin/bitcoin.git # 克隆最新版的比特币源码到本地。
cd bitcoin # 切换至比特币根目录。
git checkout v0.18.0 # 在当前分支上切换至 tag 为 v0.18.0 的版本,或省略此步骤以编译最新版。
git status # 查看当前状态(这里会显示版本信息),此步可省略。

Mac下面的依赖安装:

brew install automake berkeley-db4 libtool boost@1.64 miniupnpc openssl pkg-config protobuf python qt libevent qrencode

brew 默认安装指定库的最新版本,可以使用命令$ brew search <libname>查看指定库的所有版本。 bitcoin v0.18.0 对应的 boost 库的版本为1.64.0,可以从 bitcoin/depends/packages/boost.mk 中获取当前版本比特币对应的 boost 库的版本。

Ubuntu 16.04.x下面的依赖安装

安装基础编译依赖:

apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils python3

安装Boost依赖:

apt-get install libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev

apt-get install libboost-all-dev

ubuntu 16.04.* 默认安装 boost 库的版本为 1.58.0,可满足 bitcoin v0.18.0 对 boost 库的需求。

安装DB4.8依赖:

apt-get install software-properties-common
add-apt-repository ppa:bitcoin/bitcoin
apt-get update
apt-get install libdb4.8-dev libdb4.8++-dev

安装upnp依赖miniupnpc依赖:

apt-get install libminiupnpc-dev

安装ZMQ依赖:

apt-get install libzmq3-dev

安装QT GUI依赖支持:

apt-get install libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler # Qt 5
apt-get install libqt4-dev libprotobuf-dev protobuf-compiler # Qt 4 可选
apt-get install libqrencode-dev

编译构建:

./autogen.sh

./configure # 定制并生成 Makefile,例:关闭钱包功能,使用静态库链接得到移植后不依赖库文件的可执行文件,指定 boost 库路径等。

make -j4  # 使用 Makefile 进行比特币源码的编译,编译完成后会生成 4 至 6 个 ELF 程序,分别为 bitcoind、bitcoin-cli、bitcoin-tx、test_bitcoin,若安装了 Qt 图形库,则会增加 bitcoin-qt、test_bitcoin-qt。

make install # 该项可选,把编译好的比特币程序拷贝到系统默认的可执行程序目录 /usr/local/bin 下。

注:Mac 无法构建 bitcoin v0.18.0 的可执行文件 bitcoin-qt,因为 Mac 不支持 bitcoin v0.18.0 对应的 qt5.5 的构建。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

code

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据