Bitcoin 编译0.19版本时“undefined reference to `OPENSSL_init_crypto‘”

Posted 落霞与孤鹜亓飞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bitcoin 编译0.19版本时“undefined reference to `OPENSSL_init_crypto‘”相关的知识,希望对你有一定的参考价值。

我在0.19版本的比特币上需要修改其源代码,所以不得不通过修改源代码的方式进行安装部署,结果现在最新版本已经到了0.20版本以后了,0.20以后的版本编译的时候需要可以用openssl1.1.1g就可以,但是0.19版本的用openssl1.1.1g版本就不行,我找了好久问题都没找到,最后终于找到问题了,我把openssl的版本回退到openssl1.0.2a,结果进行编译就通过了。
步骤如下:

  1. 首先下载openssl1.0.2a, openssl历史版本可以从这里下载

wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz

  1. 然后解压缩

tar -zxvf openssl1.0.2a

  1. 然后编译

./config --prefix=/usr/local --openssldir=/usr/local/ssl
make && make install
./config shared --prefix=/usr/local --openssldir=/usr/local/ssl
make clean
make && make install

prefix 是安装目录,openssldir是配置文件目录,另外建议安装两次,shard作用是生成动态链接库

然后按照正常流程编译比特币源码即可。

./autogen.sh
./configure --disable-wallet
sudo make
sudo make install

ok,就这样就可以通过编译了。玛德这个问题困扰了我快一周,算是解决了。

以上是关于Bitcoin 编译0.19版本时“undefined reference to `OPENSSL_init_crypto‘”的主要内容,如果未能解决你的问题,请参考以下文章

比特币Bitcoin源代码安装编译

编译bitcoin比特币客户端

公告Bitcoin SV节点软件发布升级版本v1.0.8(测试版)

centos7环境通过rpm包安装mysql8.0.19

ubuntu环境下编译bitcoin(比特币)全过程

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