rust - 如何基于CENNZnet创建一个新的区 block 链项目?

标签 rust substrate

<分区>

我想基于 Substrate 创建一个新的区 block 链项目,并将其与 CENNZnet 提供的模块(例如 GenericAsset 和 CENNZX-Spot 模块)集成。

substrate-up/substrate-node-new脚本生成的工程,由于依赖不匹配,无法直接与CENNZnet模块集成,导致编译错误。

创建可与 CENNZnet 模块集成的新 Substrate 项目的最佳方法是什么?

最佳答案

(披露:我是CENNZnet的核心开发者之一)


不幸的是,我们不得不 fork Substrate 项目来添加 CENNZnet 所需的一些功能,并且所有 CENNZnet 模块都直接或间接地依赖于这些功能。这意味着为了与 CENNZnet 模块集成,人们需要依赖于我们的 Substrate fork而不是奇偶基板。

我们正在将这些更改和模块贡献回上游,因此最终将不再需要此步骤。


创建并运行一个新的 CENNZnet 运行时项目

  • 使用此链接生成一个基于 cennznet-runtime-template 的新 Github 项目:https://github.com/cennznet/cennznet-runtime-template/generate
    • 输入存储库名称并可选择输入项目描述
    • 点击从模板创建存储库
  • 克隆新创建的项目
    • git clone git@github.com:[用户名]/[项目名].git
  • 添加构建脚本的可执行权限
    • 由于 Github 错误,构建脚本的可执行权限未保留,因此我们需要手动添加它
    • chmod +x ./scripts/init.sh ./scripts/build.sh ./runtime/wasm/build.sh
  • 确保安装了所需的工具
    • ./scripts/init.sh
  • 构建项目
    • ./scripts/build.sh
    • 这会构建运行时 Wasm 文件
    • cargo 构建
    • 这将构建 native 可执行文件
  • 运行本地测试网
    • cargo 运行 -- --dev
  • 现在您的测试网已启动并正在运行

使用 CENNZnet 网页界面连接到您的节点

  • 注意:目前需要 Chrome 浏览器才能连接到本地运行的节点
  • 打开https://cennznet.js.org/cennznet-ui/#/settings
  • 将端点更改为本地节点
  • 点击保存并重新加载
  • 现在您应该可以与节点进行交互了

关于rust - 如何基于CENNZnet创建一个新的区 block 链项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56535234/

相关文章:

rust - 如何将 `chrono::format::strftime` 静态转换为 `chrono::format::Item`?

rust - `if let` 如果中间值不运行析构函数

json-rpc - 如何在 Substrate 上构建 pow 共识中包含 json-rpc?

unit-testing - 编写 Substrate Runtime Test 时快进时间

rust - 标准库中是否有完善的功能或一些推荐的方法来扩展Rust中的转义序列?

rust - 二元运算 `|` 不能应用于类型

Haskell 相当于 Rust 的 GAT?

rust - 如何重新启动基板节点

substrate - 你如何使用 Polkadot JS API 格式化余额?

blockchain - 如何在基板框架中使用--staging标志?