Bitcoin项目源码是用C++写的,我对C++以及它的编译工具又比较熟悉,这次我尝试了在openEuler RISC-V 24.09上面部署Bitcoin。网上编译Bitcoin源码的很多都是以前旧版的,旧版编译是用automake之类的工具,但是在最新版只需要用cmake就行,两者的部署方式不相同,我分别记录一下。

最新版:

  把项目拉下来之后,因为有比较多的依赖没有下载,于是只能边跑边看看缺什么,以下是缺的几样东西(除去最基本的C++工具)

  dnf intall sqlite-devel

  dnf install boost-devel

  dnf install pkgconf-devel

  只需要 mkdir build && cd build && cmake .. && make -j$(nproc)即可部署,不过编译完还有瑕疵,得测试以下。

  

  跟Boost相关的警告,得测试各种Bitcoin的命令行服务才能知道究竟有什么。

旧版:

  旧版我用的是 0.10.3,这是比较早期的版本,即便是在现在的Ubuntu(x86)上面编译,也会出现问题(包版本比较新)。

  以下是缺的包(除去C++及其编译工具链)

  dnf install libdb-devel

  但是这里安装完再跑一遍会出现如下的错误

  因此在 configure 阶段,我选择加了 --disable-wallet 这个选项,禁用掉钱包的功能。

  继续往下走,就比较棘手了,推断跟Boost有关,我在Ubuntu上面也遇到了,不过下载了libboost-system-dev就解决了

  准确来说,应该要下载libboost-all-dev,因为不止boost_system会有这个问题,主要一点就是libboost-all-dev包含了libboost-system-dev,但是OE上面boost-devel好像并不包含boost-system-devel?因为只有 boost-system 而没有 boost-system-devel。

  暂时就先到这里,如果解决了我再写一篇文章,综上,旧版的就只需要 ./autogen.sh && ./configure --disable-wallet 就能到这里了,至于怎么解决,我还在探讨。

Bitcoin部署到openEuler RISC-V的更多相关文章

  1. linux部署win服务 dotnet mono jexus

    .Net Core (dotnet C#应用) dotnet 可以用在linux上运行 C#应用 适用于 SSO 统一身份认证系统 # 安装依赖 yum install libunwind yum i ...

  2. 项目测试环境自动化部署[jenkins前后端配置、Nginx配置]

    持续部署:关注点在于项目功能部署到服务器后可以正常运行,为下一步测试环节或最终用户正式使用做准备.(问题点:一个环节有问题,其他环节跟着有问题) 持续集成:关注点是在于尽早发现项目整体运行问题,尽早解 ...

  3. Maven 3.3.3 Win10环境下的使用实例(上)

    Maven是一个项目管理和构建自动化工具,在使用之前,请按照Apache官网提供的指南进行环境变量配置. 完成后在PowerShell中输入如下命令来验证Maven的部署情况: mvn -v 正常的响 ...

  4. SpringBoot入门教程(二十)Swagger2-自动生成RESTful规范API文档

    Swagger2 方式,一定会让你有不一样的开发体验:功能丰富 :支持多种注解,自动生成接口文档界面,支持在界面测试API接口功能:及时更新 :开发过程中花一点写注释的时间,就可以及时的更新API文档 ...

  5. 监控生产线上服务器的docker容器及主机

    1. 部署cadvisor容器,用来收集host上的容器信息,该容器部署在需要收集容器信息的每一个主机上部署: docker run -v  /:/rootfs:ro -v /var/run:/var ...

  6. mongoDB 使用总结

    http://blog.chinaunix.net/space.php?uid=22270773&do=blog&id=19935171. 如果无特别用途,建议:表名,字段名 全部用小 ...

  7. SoC的Testbench中的简易bus_monitor(加入print函数)

    SoC的Testbench中的简易bus_monitor(加入print函数) 主要思路 向固定地址写信息 使用工具链将C写的print/printf函数编译成hex文件 在testbench中创建b ...

  8. SoC编译HEX脚本(基于RISC-V的SoC)

    SoC编译HEX脚本(基于RISC-V的SoC) 脚本使用 ./compile hello 脚本:设置RISC-V工具链riscv_set_env ############## RISC-V #### ...

  9. 给大家整理了几个开源免费的 Spring Boot + Vue 学习资料

    最近抽空在整理前面的文章案例啥的,顺便把手上的几个 Spring Boot + Vue 的学习资料推荐给各位小伙伴.这些案例有知识点的讲解,也有项目实战,正在做这一块的小伙伴们可以收藏下. 案例学习 ...

  10. RV32I基础整数指令集

    RV32I是32位基础整数指令集,它支持32位寻址空间,支持字节地址访问,仅支持小端格式(little-endian,高地址高位,低地址地位),寄存器也是32位整数寄存器.RV32I指令集的目的是尽量 ...

随机推荐

  1. 阿里云IP遭受DDOS攻击 快速切换IP实践

    阿里云IP遭受DDOS攻击 快速切换IP实践 #1 介绍 运行平台: 阿里云 访问链路: 域名 -> 负载均衡EIP -> 容器 网站无法访问,查询服务运行正常,查询公网流量异常高后断流了 ...

  2. 使用format_obproxy_digest_log工具分析obproxy网络层耗时SQL

    之前写过一个博客,介绍 ob_tools包 来实施抓取 observer 层的 gv$ob_sql_audit 的SQL,还提供一些分析SQL来通过不同维度分析缓慢的业务SQL语句,免得和应用扯皮说数 ...

  3. BotSharp 4.0 Sidecar:迈向更大规模化的AI Agent平台框架

    BotSharp 是一个功能强大的开源项目,由 SciSharp[1] 社区开发和维护,旨在实现.NET技术栈下高度可定制的多智能体解决方案.为开发高效的对话式 AI 系统提供了极大的灵活性.通过其模 ...

  4. Dynamic CRM插件程序集中引入第三方dll合并打包

    有时候 在插件程序集不可避免的需要使用第三方的dlll 但crm插件平台注册时 只能注册一个dll 即项目自身的dll 第三方的dll无法正常在注册后使用 查找官方资料 找到如下方法 合并打包成一个d ...

  5. 深入理解ASP.NET Core 管道的工作原理

    在 .NET Core 中,管道(Pipeline)是处理 HTTP 请求和响应的中间件组件的有序集合.每个中间件组件都可以对请求进行处理,并将其传递给下一个中间件组件,直到请求到达最终的处理程序.管 ...

  6. SpringBoot-整合Open Feign

    -------------------------------------------------- Spring Boot简单整合Open Feign一.使用Open Feign1.引入依赖2.添加 ...

  7. 第一个shell脚本(bash脚本)

    首先它是一个脚本,并不能作为正式的编程语言.因为是跑在linux的shell中,所以叫shell脚本.说白了,shell脚本就是一些命令的集合.运维工作中把常用的一系列的操作都记录到一个文档中,然后去 ...

  8. Python读取txt文本

    转载:Python读取txt文本三种方式 python常用的读取文件函数有三种read().readline().readlines() read() 一次性读取所有文本,在读取文本中含有中文时是gk ...

  9. hackmyvm Hades5变量劫持提权

    在这个目录下有个./uid的程序 分别运行./uid 和 id 发现我们在 uid一行是有不一样的 我们猜测 在./uid里面他先用chown把我们的 uid改写成了anthea 然后运行id 然后再 ...

  10. 微信小程序安全开发、测试的一些记录

    目录 开发原则 漏洞类型--越权 漏洞类型--信息泄露 漏洞类型--爬虫遍历 漏洞类型--授权用户信息变更不跟进 漏洞类型--注入类 漏洞类型--上传.下载类 Reference 本文基于微信开发者平 ...