使用Substrate开发区块链存证dApp

本文详细介绍了如何使用Substrate开发一个区块链存证dApp。首先,文章讲解了Substrate开发环境的搭建,包括安装Rust、yarn等必要工具。接着,基于node-template开发存证dApp的后端节点,处理了编译过程中可能遇到的问题。然后,创建并配置了存证pallet,包括事件声明、错误定义、存储结构和接口实现。最后,将存证pallet集成到runtime中,完成节点编译和启动。
摘要由CSDN通过智能技术生成

1 前言

前面文章介绍了在Substrate上开发智能合约,包括使用原生的ink!语言开发ERC20智能合约,以及将以太坊的Solidity智能合约跑在Substrate链上,在本文将进一步学习在Substrate链上开发一个自定义的区块链存证dApp。

本文内容参考:https://substrate.dev/docs/en/tutorials/build-a-dapp/

2 前置准备

2.1 rust安装

Substrate是由rust语言开发,首先需要安装rust环境。

2.1.1 软件安装

Rust的安装比较简单,执行如下一条命令即可,该命令将自动完成软件包的下载、安装、环境变量设置:

$ curl --proto ‘=https’ --tlsv1.2 -sSf https://sh.rustup.rs | sh

安装成功后,会显示如下日志

stable installed - rustc 1.45.1 (c367798cf 2020-07-26)
Rust is installed now. Great!

安装完成后,在~/.cargo/bin目录可以看到相关命令行工具

.cargo/bin/
├── cargo
├── cargo-clippy
├── cargo-fmt
├── cargo-miri
├── clippy-driver
├── rls
├── rustc
├── rustdoc
├── rustfmt
├── rust-gdb
├── rust-lldb
└── rustup

2.1.2 环变设置

执行下面命令,即将export PATH=“ H O M E / . c a r g o / b i n : HOME/.cargo/bin: HOME/.cargo/bin:PATH”,追加到~/.bashrc中
$ cat ~/.cargo/env >> ~/.bashrc

执行下面命令,使得添加的环境变量生效
$ . ~/.bashrc

可执行如下命令查看安装版本

$ rustc --version
rustc 1.45.1 (c367798cf 2020-07-26)

2.1.3 配套安装

(1) Racer安装

Racer是一个由Rust爱好者提供的Rust自动补全和语法分析工具,被用来提供基本的补全功能和自定义跳转功能。本身完全由Rust写成,补全功能比较完善。

· 安装命令

$ cargo install racer

Finished release [optimized] target(s) in 2m 44s
Installing /home/jason/.cargo/bin/racer
Installed package racer v2.1.36 (executable racer)

若安装报错:error[E0554]: #![feature] may not be used on the stable release channel

请先执行下面命令,切换到nightly版本后,再进行安装:

$ rustup install nightly
$ rustup default nightly
$ rustc --version
rustc 1.47.0-nightly (6c8927b0c 2020-07-26)

· 查看版本

$ racer -V
racer 2.1.36

(2) 源码下载

为了对Rust标准库进行补全,Racer需要获取Rust源码路径。通过rustup获取源码的好处是rustup update可以随时获取最新代码

· 获取源码

$ rustup component add rust-src
info: downloading component ‘rust-src’
info: installing component ‘rust-src’

· 更新源码

$ rustup update
info: checking for self-u

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值