Home 比特币-核心客户端编译和运行
Post
Cancel

比特币-核心客户端编译和运行

如何下载、编译和运行 bitcoin 核心客户端。

这是完整节点客户端,有安装版和编译版,适合于普通用户和开发者。

安装版

在 bitcoin 官网 下载,包括 windows、macOS、linux、ubuntu 等版本,下载后安装即可。

编译版

  1. clone bitcoin 源码并切换版本

    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    $ git clone https://github.com/bitcoin/bitcoin.git
    $ cd bitcoin && git tag
    ...
    v0.16.1
    v0.16.1rc1
    v0.16.1rc2
    v0.16.2
    v0.16.2rc1
    v0.16.2rc2
    

    这里列出的是所有发型版本,rc 后缀的是预发行版本,可以用来测试。没有后缀的是稳定版本,可以直接在产品上运行。这里选择现在最新的 0.16.2 版本

    1
    
    $ git checkout v0.16.0
    
  2. 安装相关依赖

    1
    
    $ sudo apt-get install -y  autoconf libtool pkg-config libboost-all-dev libssl-dev libevent-dev
    
  3. 安装 berkeleyDB berkeleyDB 是一款嵌入式数据库, bitcoin 使用它的特定版本berkeleyDB-4.8.30作为钱包数据库. 

    1
    2
    3
    4
    
    $ sudo apt-get install software-properties-common
    $ sudo add-apt-repository ppa:bitcoin/bitcoin
    $ sudo apt-get update
    $ sudo apt-get install libdb4.8-dev libdb4.8++-dev
    
  4. 编译

    1
    2
    3
    4
    
    $ ./autogen.sh
    $ ./configure 
    $ make
    $ sudo make install
    

    install 会将 bitcoind 和 bitcoin-cli 安装到 /usr/local/bin/ 下

  5. 运行

    1
    
    $ bitcoind -daemon -datadir=<datadir>
    

    需要很长一段时间来同步所有数据,现在所有数据超过了 200G。

  6. 通过命令行使用 RPC-API 接口 所有 RPC-API 接口定义可以查看官方的wiki,也可以通过 help 来查看。

    当你第一次运行 bitcoin-cli 时,它会提醒你用一个安全密码给 JSON-RPC 接口创建一个配置文件 :

    1
    2
    
    $ bitcoin-cli help
    error: Could not locate RPC credentials. No authentication cookie could be found, and RPC password is not set.  See -rpcpassword and -stdinrpcpass.  Configuration file: (/home/cooli7wa/.bitcoin/bitcoin.conf)
    

    在你喜欢的编辑器中编辑配置文件并设置参数,将其中的密码替换成 bitcoind 推荐的强密码。不要使用出现在这里的密码。在 ~/.bitcoin 目录下创建一个名为 bitcoin.conf 的文件,然后输入用户名和密码:

    1
    2
    
    $ rpcuser=cooli7wa
    $ rpcpassword=2XA4DuKNCbtZXsBQRRNDEwEY2nM6M4H9Tx5dFjoAVVbK
    
    1
    
    $ bitcoin-cli xxx
    
  7. 停止 bitcoind

    1
    
    $ bitcoin-cli stop
    
  8. 安装 bitcoin-qt

    1
    
    $ sudo apt-get install libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler libqrencode-dev
    

    重新执行一遍配置和编译:

    1
    2
    3
    
    $ ./autogen.sh
    $ ./configure
    $ make
    

    启动图形界面

    1
    
    $ ./src/qt/bitcoin-qt -datadir=<datadir>
    

    同步同样需要很多时间

This post is licensed under CC BY 4.0 by the author.
Contents