比特币源码分析(1)---比特币的构建

bitcoin.png

背景

  • 其实对于我来说,我是特别认可区块链的发展的,之前也玩过ETH,EOS,但是我还是觉得需要从根源去了解区块链,比特币作为区块链的第一次应用,那么其代码还是需要深入的研究的,所以我最近准备把区块链源码好好看看,后续的很多平台都是有比特币的影子,这样以后做平台开发或者DAPP开发能够有着更深的认识

前言

构建过程

  • 废话不多说直接干吧,这里偷个懒我把构建过程放到github上面了,下面是链接
  • 构建链接

结果

  • 下面放一下构建好的结果图

  • 编译成功后可以看到下图中的几个可执行的程序,bitcoind可以启动后台进程


    compile_result.png
  • 当安装成功后, 你可以通过下面三个命令去访问程序 bitcoind, bitcoin-qt, 和 bitcoin-cli.

  • bitcoin-qt 提供了一个全节点和钱包的前端访问点,当然你也可以通过文档中的RPC接口来访问
  • bitcoind 就是比特币中的一个节点,钱包也是依赖于这个节,当然我们也可以通过RPC接口(端口8332)来和这个节点交互,详情可以参考开发者文档

  • bitcoin-cli 允许我们通过发送RPC命令和bitcoind节点通信

  • 然后允许命令bitcoind -printtoconsole -debug 启动我们的比特币链
    boot.png

遇到的问题

  • 构建过程中遇到了一个小问题,就是内存不够,我是在google cloud上面启动的一个虚机,3.75G内存不够用,最后调整到了6.5G就OK了
  • 包括前几天build EOS 3.0的时候最低内存需要10G,所以以后build的时候内存尽量调大一点,开个10G左右