主页 > imtoken转账需要验证码 > btc源码编译及环境搭建

btc源码编译及环境搭建

imtoken转账需要验证码 2023-05-23 05:54:24

这里写图片描述

区块链是近几年才流行起来的概念。 最早,大家只知道比特币(bitcoin)。 很长一段时间,比特币几乎就是区块链的代名词。 当然,大多数人关注的是比特币的价格,而作为技术出身的人,听到后的第一反应是:

我是牛,太牛了,我是怎么做到的!

想看看比特币是如何实现的冲动是如此强烈。 好在比特币是开源的,所以基于github上的比特币源代码,我们可以快速搭建自己的比特币服务和钱包。

你说你设置的时候可以做什么?

- 我的可以吗?我个人无法挖掘出来。

- 你能制作山寨币吗? 还不如以太坊上发行的ERC-20,发币只需5分钟。

好吧,以上都没有多大价值。 比特币,作为区块链项目的始祖,虽然从目前的角度来看它存在着种种不足,但它展现了区块链技术的核心部分,是学习区块链技术的最佳工具。 让我们开始吧。

操作系统

我使用的是 Ubuntu 18.04

安装依赖项

使用命令apt-get install安装,如果没找到命令,安装apt-get(自行搜索,安装后sudo apt-get update更新包),显示权限不够,使用sudo apt-获取安装命令

sudo apt-get 安装 make

sudo apt-get 安装 gcc

sudo apt-get 安装 g++

sudo apt-get 安装 libevent-dev

sudo apt-get 安装 libdb-dev

sudo apt-get 安装 libdb++-dev

sudo apt-get install libdb5.3++-dev

sudo apt-get 安装 libboost-dev

sudo apt-get 安装 libboost-all-dev

sudo apt-get 安装 zlib1g-dev

sudo apt-get 安装 libssl-dev

sudo apt-get install build-essential

sudo apt-get 安装 libminiupnpc-dev

sudo apt-get install autoconf

sudo apt-get 安装 libprotobuf-dev

sudo apt-get install protobuf-compiler

sudo apt-get 安装 libqt4-dev

sudo apt 安装 libcanberra-gtk-module libcanberra-gtk3-module

我这里列出的库比网上查到的资料上列出的要多,可能因为我是全新安装的Ubuntu,也想在x-window下用图形界面运行。 提前装一点总比装到一半好,现在硬盘空间也不缺。

编译运行

1.下载源码

第一步当然是先去github上下载源码。 如果没有 git,请先安装 git。

sudo apt-get 安装 git-core

推荐git clone下载,虽然有点慢,如果通过网站包下载,容易下载不完整

混帐克隆

2.配置编译

CD比特币

进入目录,会看到整个源码的各种文件

这里写图片描述

其中有可执行文件autogen.sh和配置文件configure

./autogen.sh

如果报错最早知道比特币,加sudo

。/配置

这是配置与您机器上运行的代码相关的依赖项并检查必要的环境。

初始化步骤

这里有一点解释。 比特币代码运行机制是多线程的。 父进程创建子进程。 运行过程中父进程返回后,子进程继续初始化运行进程,包括以下12个步骤:

第 1 步:设置设置

第二步:参数交互参数交互(主要是一些参数设置)

第三步:parameter-to-internal-flags 参数传递给内部标志(bool类型变量)

第四步:应用程序初始化:dir lock, daemonize, pidfile, debug log

应用初始化:锁定目录、后台运行、调试信息

第五步:验证钱包数据库的完整性 确认钱包数据库的完整性

第六步:网络初始化网络初始化

第七步:加载区块链加载区块链

第八步:加载钱包load wallet

第九步:导入区块 导入区块数据

第十步:load peers import peers

第十一步:start node 启动节点(此处为挖矿程序)

第12步:完成完成

检查配置信息和网络情况是否满足加载区块链的条件。 执行.configure后,需要查看是否有相应的错误信息或WARNING。 一般来说,警告是允许的。 对于比特币的最终操作,但我们还是更喜欢将警告一一消除比较好。

这里最容易遇到的就是db兼容性的问题。 我遇到的错误信息:

这里写图片描述

从网上查到的资料,直接加上编译参数就可以了。

./configure –with-incompatible-bdb

这里写图片描述

配置完成,没有报错,下面可以进行编译了。

制作

如果执行成功最早知道比特币,没有报错,继续安装

须藤安装

注意:这里需要管理员权限,所以加上sudo

安装完成!

操作系统

执行订单:

比特币-qt

注意:使用qt在x-window下运行。

这里写图片描述

看看这里的提示。 加载块数据需要203G。 单击确定执行块同步。

这里写图片描述

好吧,以我目前的互联网速度,我需要 9 年才能同步所有数据......

203G,听上去数据很多,但是仔细想想,从2009年到现在10年的所有比特币数据节点、网络、交易数据,你会觉得这个数据很小。

经验:尽量在root下进行所有的安装和配置操作。

参考:

比特币Bitcoin Wiki

比特币比特币源代码文档

比特币比特币中国