基于Win10和VS2013-VS2019的 比特币源码(v0.01)编译-第一章
前言
比特币第一版源码(v0.01),是对照比特币白皮书研究区块链的最佳选择,因此搭建比特币开发环境是研究区块链技术的第一步。在Win10环境下通过VS2013/VS2019搭建比特币环境,能快速有效地帮助我们学习区块链知识。本文将从bitcoin- v0.01源码作为切入点,详尽展示比特币编译过程,为自主编译、学习、理解区块链技术提供坚实的实践基础。
比特币v0.01源码中包含编译好的bitcoin.exe,可在Win7中可直接运行,在Win10环境下需要重新编译生成新的bitcoin.exe文件才可以运行。文本主要讲述如何在Win10中使用VS2013编译比特币v0.01源码(VS2015/VS2017/VS2019也可编译成功,见下图)。
一、准备工作
1.1源码下载
首先,我们获取比特币第一版内测源码BitCoin-v0.01-ALPHA,作为参照学习。下载地址:https://github.com/livegnik/BitCoin-v0.01-ALPHA。
1.2 文件构成
拿到源码,首先我们需要了解代码的整体结构和软件定位、功能、运行环境等,掌握比特币项目的整体布局。bitcoin- v0.01代码结构如下:
Ø src:源码文件夹
Ø bitcoin.exe:比特币钱包客户端运行程序(Win7可直接运行)
Ø libeay32.dll:Openssl动态链接库
Ø LICENSE:MIT许可证
Ø license.txt:版权说明
Ø mingwm10.dll:mingw动态链接库
Ø readme.txt:指引文件,提供软件定位、基本功能、运行环境等的说明
通过对整体代码结构的理解和readme文件所提供的信息,我们可以初步得出以下信息:
比特币是一种电子现金系统,它使用点对点网络来防止双花。它完全是分布式的,没有中心化服务器或中心权威。
此版本为测试版本(ALPHA版本),可在文件解压目录中直接运行bitcoin.exe,为连接其他节点需将端口绑定为8333。
通过Generate Coins选项可解决一个计算难题,成功解决一个难题将创建一个新区块并得到比特币作为报酬。
1.3 源码构成
src中包含编译比特币客户端需要的头文件、源文件、资源文件等。src中的文件结构如下:
源码结构的说明可以从说明文件readme.txt开始。作为源码的说明文件,readme提供了源码编译环境和第三方依赖的版本、编译的说明,为我们编译源码提供了诸多有用的信息。通过阅读readme文件,可以得到以下信息:
编译源码所用的IDE为Microsoft Visual C++ 6.0,编译器为MinGW。而本文将使用目前较为主流的编译器VS2013或VS2019(平台工具集选择:Visual Studio 2013 (v120)),操作系统为Win10家庭版64位。
编译过程应用了四个第三方依赖库: wxWidgets、Openssl、Berkeley DB、Boost。
文件提供了所需库文件的版本信息与编译方法,因此需要我们提前编译第三方依赖库文件,以获得第三方依赖。
完整版PDF:CSDN下载