如何从 `wasm` 文件夹生成内容?
How do I generate the content from the `wasm` folder?
我正在尝试从头开始构建智能合约。我从 cargo new my-contract
开始。
我连接了 Elrond 依赖项,现在 cargo 运行 没有抱怨了。
现在当我 运行 erdpy contract build
我得到
FileNotFoundError: [Errno 2] No such file or directory:
'/home/bogdan/workspace/sc-from-scratch/wasm'
查看其他模板,发现生成了这个wasm文件夹的内容。
这是我的问题的相关提交:https://github.com/bogdan-marian/sc-from-scratch/commit/aa6f912e6bca413a91f18c9de52257390645b139
如何从 wasm
文件夹生成内容?
在构建智能合约本身之前,您是否尝试过 cargo build
?
它将安装依赖项,并生成相应的文件夹。如果它仍然没有创建 wasm
文件夹,您是否检查了 cargo.toml
文件中的依赖项?
你应该有类似的东西:
[package]
name = "router"
version = "0.0.0"
authors = [ "you",]
edition = "2018"
publish = false
[lib]
path = "src/lib.rs"
[features]
wasm-output-mode = [
"elrond-wasm-node",
"token_send/wasm-output-mode",
]
[dependencies.token_send]
path = "../../common/modules/token_send"
[dependencies.elrond-wasm]
version = "0.21"
features = ["derive"]
[dependencies.elrond-wasm-derive]
version = "0.21"
[dependencies.elrond-wasm-node]
version = "0.21"
optional = true
[dev-dependencies.elrond-wasm-debug]
version = "0.21"
[dependencies.pair]
path = "../pair"
我建议从示例项目之一的 wasm 文件夹开始,该文件夹适合您正在使用的 elrond-wasm 版本。
在较新的版本中,wasm/src/lib.rs 的内容将由您也应该拥有的元子项目生成。
一般来说,如果您使用 erdpy contract new 所定义的模板之一,如所述 here
例如
erdpy contract new --template adder
事实证明,这个问题比我最初认为的要复杂得多。我最终创建了一个关于如何从头开始创建智能合约的完整教程。短版是
- 需要手动添加wasm文件夹
- 稍后添加 meta crate 后,将为您生成此文件夹的内容。
在这里你可以看到我经历了整个流程:
https://youtu.be/UYU9Gqw8ldg
我正在尝试从头开始构建智能合约。我从 cargo new my-contract
开始。
我连接了 Elrond 依赖项,现在 cargo 运行 没有抱怨了。
现在当我 运行 erdpy contract build
我得到
FileNotFoundError: [Errno 2] No such file or directory: '/home/bogdan/workspace/sc-from-scratch/wasm'
查看其他模板,发现生成了这个wasm文件夹的内容。 这是我的问题的相关提交:https://github.com/bogdan-marian/sc-from-scratch/commit/aa6f912e6bca413a91f18c9de52257390645b139
如何从 wasm
文件夹生成内容?
在构建智能合约本身之前,您是否尝试过 cargo build
?
它将安装依赖项,并生成相应的文件夹。如果它仍然没有创建 wasm
文件夹,您是否检查了 cargo.toml
文件中的依赖项?
你应该有类似的东西:
[package]
name = "router"
version = "0.0.0"
authors = [ "you",]
edition = "2018"
publish = false
[lib]
path = "src/lib.rs"
[features]
wasm-output-mode = [
"elrond-wasm-node",
"token_send/wasm-output-mode",
]
[dependencies.token_send]
path = "../../common/modules/token_send"
[dependencies.elrond-wasm]
version = "0.21"
features = ["derive"]
[dependencies.elrond-wasm-derive]
version = "0.21"
[dependencies.elrond-wasm-node]
version = "0.21"
optional = true
[dev-dependencies.elrond-wasm-debug]
version = "0.21"
[dependencies.pair]
path = "../pair"
我建议从示例项目之一的 wasm 文件夹开始,该文件夹适合您正在使用的 elrond-wasm 版本。
在较新的版本中,wasm/src/lib.rs 的内容将由您也应该拥有的元子项目生成。
一般来说,如果您使用 erdpy contract new 所定义的模板之一,如所述 here
例如
erdpy contract new --template adder
事实证明,这个问题比我最初认为的要复杂得多。我最终创建了一个关于如何从头开始创建智能合约的完整教程。短版是
- 需要手动添加wasm文件夹
- 稍后添加 meta crate 后,将为您生成此文件夹的内容。 在这里你可以看到我经历了整个流程: https://youtu.be/UYU9Gqw8ldg