因为一直比较熟悉Windows平台的开发,本来打算在windows下进行编译,但查了一些文章,发现还是在linux下编译成本最低,所以这里就以手头现有的Centos7环境进行代码编译。
 
一、代码获取
获取到代码后,结合一些文章,发现是基于C++进行开发的,这让我欣喜不已。作为一个有着七八年C++开发经验的老程序员来说,在这里遇到了熟悉的C++,就好比遇到了老朋友。还以为在遍地移动开发的今天,C++已是昨日黄花,没想到居然以一个意想不到的姿态出现在自己眼前,出息大了。。
二、编译环境
官方文件https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md中有详细的编译和依赖说明
安装相关依赖
yum install -y boost-devel qt-devel protobuf-devel qrencode-devel libevent-devel libtool openssl-devel
安装libdb(这个地址需要账号登录,然后从浏览器的下载链接中获取到你自己可用的下载链接)
 
tar -xzf db-6.2.32.NC.tar.gz
cd db-5.1.29.NC/build_unix/
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=/usr/local
make install
 
三、编译
进入到bitcoin源代码根目录下
1、./autogen.sh   生成configure文件
2、因为前面libdb安装的是6.2版本,所以./configure时添加 --with-incompatible-bdb忽略libdb版本差异
./configure --with-incompatible-bdb
./configure -with-gui  configure命令带-with-gui说明我需要带界面的客户端。如果不需要可以用-without-gui。
3、make
     make install# optional
 
四、编译结果
编译完成后在/usr/local/bin目录下会生成7个可执行文件
 
bench_bitcoin:根据https://github.com/bitcoin/bitcoin/issues/829 解释,作用是编译系统更新,也就是检查系统使用的一些加密算法是否有新的更新。
bitcoin-cli:是Bitcoind的一个功能完备的RPC客户端,包括查询区块,交易信息等等,具体将在相应章节介绍。
bitcoind:是比特币运行的核心程序俗称bitcoin core。
bitcoin-qt:比特币钱包。
bitcoin-tx:比特币交易处理模块,支持交易的查询和创建。
test_bitcoin:运行各个模块的测试代码。
test_bitcoin-qt:运行钱包的模块测试代码。
 

基于Centos7的比特币源码编译的更多相关文章

  1. centos7下比特币源码编译安装

    今天我们介绍比特币的源码安装过程,是利用编译安装的 首先安装依赖 1 yum install -y boost-devel qt-devel protobuf-devel qrencode-devel ...

  2. 001_centos7下比特币源码编译安装

    今天我们介绍比特币的源码安装过程,是利用编译安装的 首先安装依赖 yum install -y boost-devel qt-devel protobuf-devel qrencode-devel l ...

  3. 在CentOS7上从源码编译安装redis,并做成服务程序

    1.安装编译的依赖环境 # 安装pcre开发包: yum install -y pcre-devel # 安装ssl功能需要openssl库 yum -y install openssl-devel ...

  4. CentOS7.6源码编译安装PHP 7.3.8

    安装步骤 PHP官网下载链接:https://www.php.net/downloads.php 1. 使用wget命令下载源码安装包 wget https://www.php.net/distrib ...

  5. centos7源码编译安装lamp/lnmp

    centos7源码编译安装lamp/lnmp 进程:是包工头(相当于是个门,只管开门关门,不管门内的事儿) 线程:是各种工种(cpu调度的是线程) 进程 是一件事情, 线程 是 同一个时间范围内 同时 ...

  6. Centos7.X 源码编译安装subversion svn1.8.x

    说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...

  7. 源码编译安装LAMP环境及配置基于域名访问的多虚拟主机

    实验环境及软件版本: CentOS版本: 6.6(2.6.32.-504.el6.x86_64) apache版本: apache2.2.27 mysql版本:  Mysql-5.6.23 php版本 ...

  8. 基于cdh5.10.x hadoop版本的apache源码编译安装spark

    参考文档:http://spark.apache.org/docs/1.6.0/building-spark.html spark安装需要选择源码编译方式进行安装部署,cdh5.10.0提供默认的二进 ...

  9. 基于源码编译安装openssh

     最近的,openssl/openssh等相继漏洞的暴露,让暴露在公网的linux.沦陷为肉鸡的正营... 没办法,还是升级版本... 00.openssh简介 OpenSSH 是一组安全远程的连接工 ...

随机推荐

  1. 【转】Json判断是否存在某个属性和遍历各个属性和值

    var field='uid'; var jsonObj={uid:'001'}; 一. jsonObj[field] != undefined //注意:如果field值正好是undefined那就 ...

  2. P3935 Calculating

    题目描述 若xx分解质因数结果为\(x=p_1^{k_1}p_2^{k_2}\cdots p_n^{k_n}\),令\(f(x)=(k_1+1)(k_2+1)\cdots (k_n+1)\),求\(\ ...

  3. [USACO08NOV]Mixed Up Cows

    嘟嘟嘟 一看n那么小,那一定是状压dp了(表示从没写过,慌). 首先dp[i][j](i 是一个二进制数,第x位为1代表选了第x头牛),表示 i 这个状态最后一头牛是第 j 头牛时的方案数. 然后当 ...

  4. java web开发环境配置系列(一)安装JDK

    在今天,读书有时是件“麻烦”事.它需要你付出时间,付出精力,还要付出一份心境.--仅以<java web开发环境配置系列>来祭奠那逝去的…… 1.下载JDK文件(http://www.or ...

  5. leetcode 39. Combination Sum 、40. Combination Sum II 、216. Combination Sum III

    39. Combination Sum 依旧与subsets问题相似,每次选择这个数是否参加到求和中 因为是可以重复的,所以每次递归还是在i上,如果不能重复,就可以变成i+1 class Soluti ...

  6. java多态成员的特点

    父类: package com.company; public class A { ; public void ok(){ System.out.println("i am father!& ...

  7. 【gulp】Gulp的安装和配置 及 系列插件

    注意:要安装俩次gulp(全局和本地):全局安装gulp是为了执行gulp任务,本地安装gulp则是为了调用gulp插件的功能. 之前由大牛帮忙配置的gulp来用.今天时间充裕,就和小伙伴一起动手配置 ...

  8. 旧贴-在 win7 / win8 下安装苹果系统 (懒人版)

    前言 该文转载自远景论坛,发布时间2012年,仅供学习参考 这篇安装教程的素材在国庆就准备好了,但那时学习任务比较重,没有时间发帖,一直拖到现在.趁这个周末有空,赶紧写完它,希望能帮助一些景友. 论坛 ...

  9. 分子量 (Molar Mass,ACM/ICPC Seoul 2005,UVa1586)

    习题 3-3 分子量 (Molar Mass,ACM/ICPC Seoul 2005,UVa1586) 给出一种物质的分子式(不带括号),求分子量.本题中的分子式只包含4种原子,分别为C,H,O,N, ...

  10. C++中数组名和指针的区别联系

    原文:http://www.cnblogs.com/ddx-deng/archive/2012/12/16/3755862.html 第一个结论: #include "iostream.h& ...