在windows下编译搭建比特币环境

最近打算研究下比特币源码,却发现这套源码正常情况下得在linux下编译运行,而我的机器是windows的。

怎么办呢?

起初打算用mingw和cygwin搞搞看,试了许久后发现行不通,必须转到linux环境下才行。

为了在windows下使用linux环境,最初是打算用虚拟机的,后来又想起win10下已经支持linux了(WSL),所以打算先用WSL试试,没想到竟然真的成功了。

故写下这篇文章,记录下环境搭建过程,以免以后再有类似需求的话会走弯路。

安装并配置WSL

在开始之前先确定一下Windows版本是不是Windows10,然后建议更新到最新版.
打开 Microsoft Store , 搜索 Linux 会有三个结果 Ubuntu , openSUSE Leap42 , SUSE Linux Enterprise Srever

因为日用为主所以这里选择 Ubuntu,用Ubuntu作为示范(WSL里的Ubuntu自带git,vim,ssh等常用软件,其他的没用过不清楚).
傻瓜式安装完成之后(连下一步都没有),会弹出通知直接打开就行,如果没有通知可以去开始里找到刚刚安装好的 Ubuntu 打开就行了

但是,这个时候会发现,不能用提示没有打开WSL,需要启动后重试

需要到 控制面板\所有控制面板项\程序和功能 中选择 启用或者关闭Windows功能

找到 适用于Linux的Windows子系统 并勾选,然后 确定 选择 立即重新启动

重启之后再次打开 Ubuntu 就可以使用了,根据提示输入用户名,两次输入密码就可以看见熟悉的命令行

然后熟悉的套路,先设置root用户

sudo passwd root

su root

然后输入root用户的密码即可,接着更换 apt 的数据源

cd /etc/apt  #进入配置文件所在目录
cp sources.list sources.list.bak  #备份配置文件
vim sources.list  #编辑配置文件

将下面的配置覆盖 sources.list 中的配置

deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse

于是我就想,既然这是安装在Windows上的子系统,那是不是应该有着类似于共享文件夹的东西,于是找到了这么一个文件夹

C:\Users\%USERNAME%\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs

这个就是 Ubuntu WSL版的根目录,接着到 *etc\apt* 下找到 sources.list 用之前贴的配置文件覆盖即可.接着更新数据源

sudo apt-get update  #更新源
sudo apt-get upgrade  #更新软件 

安装并编译比特币源码

首先,我们去拿比特币源码

git clone https://github.com/bitcoin/bitcoin.git

然后,执行以下命令,安装编译所需的组件

sudo apt-get install make

sudo apt-get install gcc

sudo apt-get install g++

sudo apt-get install libdb-dev

sudo apt-get install libdb++-dev

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

sudo apt-get install libboost-dev

sudo apt-get install libboost-all-dev

sudo apt-get install zlib1g-dev

sudo apt-get install libssl-dev

sudo apt-get install build-essential

sudo apt-get install libminiupnpc-dev

sudo apt-get install autoconf

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

sudo apt-get install libqrencode-dev libminiupnpc-dev

第三步,安装berkeley-db(伯克利 数据库):

Berkeley DB是一个开源的文件数据库,介于关系数据库与内存数据库之间,使用方式与内存数据库类似,它提供的是一系列直接访问数据库的函数,而不是像关系数据库那样需要网络通讯、SQL解析等步骤。

在bitcoin目录下建立文件夹db4:

cd bitcoin

mkdir db4

然后下载berkeley-db安装包:

wget ‘http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz‘

我安装这个版本的berkeley挺顺利的。如果不顺利,可以尝试下载

wget ‘http://download.oracle.com/berkeley-db/db-6.2.32.NC.gz‘

这个版本的数据库。

接下来就是解压和编译:

tar -xzvf db-4.8.30.NC.tar.gz

cd db-4.8.30.NC/build_unix/

../dist/configure --enable-cxx --disable-shared --with-pic --prefix=/home/theusername/bitcoin/db4/

make install

最后,编译比特币主代码:

进入代码主目录

./autogen.sh

./configure LDFLAGS="-L/home/theusername/bitcoin/db4/lib/" CPPFLAGS="-I/home/theusername/bitcoin/db4/include/"

make

sudo make install

验证是否安装成功:

那怎样证明安装成功了呢。我们通过以下两个命令行进行验证:

$ which bitcoind

/usr/local/bin/bitcoind

$ which bitcoin-cli

/usr/local/bin/bitcoin-cli

结果正常输出了。终于完成了进入比特币源码世界的第一步了。

本博文借鉴资料:

https://www.jianshu.com/p/0d3a32a0a973
https://www.jianshu.com/p/6b02948b3d37

原文地址:https://www.cnblogs.com/lsm19870508/p/11468764.html

时间: 2024-10-11 10:02:02

在windows下编译搭建比特币环境的相关文章

windows 下Virtualenv搭建mysql环境

在Virtualenv下用pip list命令可以看到里面没有MySQL-python 把Windows下python安装路径的Lib\site-packages下两个相关目录复制到Virtualenv安装路径的Lib\site-packages下 在安装pymysql:pip install pymysql 然后把\Lib\site-packages\django\db\backends\mysql的__init__.py文件里加上两句话: 1:import pymysql 2:pymysql

windows下cocos2dx3.0开发环境及Android编译环境搭建

cocos2dx更新到了3.x版本,自己一直没有换,现在开发组要求统一换版本,我就把搭建环境的过程记录下来. 一.Windowns下开发环境搭建 1.  所需工具 1)cocos2d-x-3.0rc0.zip   http://cn.cocos2d-x.org/download/  截止写博文时,最新版本为V3.2. 2)VS2012 http://www.baidu.com/s?wd=VS2012 3)Python  https://www.python.org/download/releas

Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。

今天为在Windows下建立PHP开发环境,在考虑下载何种PHP版本时,遭遇一些让我困惑的情况,为了解决这些困惑,不出意料地牵扯出更多让我困惑的问题. 为了将这些困惑一网打尽,我花了一下午加一晚上的时间查阅了大量资料,并做了一番实验后,终于把这些困惑全都搞得清清楚楚了. 说实话,之所以花了这么多时间,很大程度上是由于网上的资料几乎全都是支离破碎.以讹传讹的.既然我已经搞懂了,就花时间整理出来,即方便自己看,也便于大家阅读.相信通过这篇文章,可以解答很多在Windows下搭建PHP开发环境的朋友的

Go语言学习笔记(一) : 搭建Windows下的Go开发环境

最近突然对Go语言产生了兴趣,主要是因为在使用python的时候遇到了一些不爽的问题,然后发现了Go.Go是Google出的一个动态语言,语法和C++接近,性能也非常的好,而且还支持编译成exe发布,并且不依赖任何虚拟机(其实是打包在exe里面了),这种好语言怎么能够错过?所以便一时兴起,开始学习了起来.由于本人还处于异常小白的阶段,所以文章中可能不免有些错误,欢迎大家各种指正. 安装Go 前往Go语言的官方网站:http://golang.org/, 下载对应平台的安装包.如果是x86的系统可

转:Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。

原文来自于:http://www.ituring.com.cn/article/128439 Windows下的PHP开发环境搭建——PHP线程安全与非线程安全.Apache版本选择,及详解五种运行模式. 今天为在Windows下建立PHP开发环境,在考虑下载何种PHP版本时,遭遇一些让我困惑的情况,为了解决这些困惑,不出意料地牵扯出更多让我困惑的问题. 为了将这些困惑一网打尽,我花了一下午加一晚上的时间查阅了大量资料,并做了一番实验后,终于把这些困惑全都搞得清清楚楚了. 说实话,之所以花了这么

搭建Windows下的Java开发环境

搭建Windows下的Java开发环境需要下载两个工具,JDK和eclipse JDK的下载地址:http://pan.baidu.com/s/1dDlI0pj eclipse的下载地址:http://pan.baidu.com/s/1eQcSVuy 安装JDK: 单击jdk-7u25-windows-i586.exe 单击JDK后会打开JDK的安装向导 单击下一步 单击下一步 表示正在安装JDK 单击下一步 单击关闭 注:此时JDK已经安装完成 配置环境变量: 选择计算机,并且单击鼠标右键 选

【Android】利用adt-bundle在Windows下轻松搭建Android开发环境与Hello world

Android开发环境有三种方式,分别是JDK+SDK+Eclipse+ADT.JDK+adt-bundle与JDK+Android Studio. 不要使用JDK+SDK+Eclipse+ADT这种方式,不是说什么太复杂的,是因为郭嘉的网络你懂的,打开SDK工具之后就根本就下载不了.Android Studio也是不行的,说好集合大量打开环境.安装的时候却还是需要联网. 建议使用JDK+adt-bundle这种方式来搭建Android开发环境.同时adt-bundle认准20131030版本.

windows下python web开发环境的搭建

windows下python web开发环境: python2.7,django1.5.1,eclipse4.3.2,pydev3.4.1 一. python环境安装 https://www.python.org/ftp/python/2.7/python-2.7.amd64.msi 不多说,装完后把C:\Python27加入到path环境变量里. 然后就溜溜python,看看version啦.OK,next step. 二. python web开发框架django安装 django是一个采用

windows下vue.js开发环境搭建教程

这篇文章主要为大家详细介绍了windows下vue.js开发环境搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 最近,vue.js越来越火.在这样的大浪潮下,我也开始进入vue的学习行列中,在网上也搜了很多教程,按着教程来做,也总会出现这样那样的问题(坑啊,由于网上那些教程都是Vue.js 1.x版本的,现在用Vue.js 的构建工具都已经升级到2.0版本了),经过了一段时间的摸索和看官方的教程和api,才了解到2.0版本在1.0版本的基础上做了好多调整,废弃了好多api.废话不多说