如何运行 Rust 项目的示例代码

14

1/ 我在这个存储库中运行了一些示例:https://github.com/0xProject/OpenZKP

一个示例的方法是:

cargo run --release --example small_fib

我只是好奇为什么我们可以在根目录运行示例small_fib,即使示例位于此存储库的多个项目中的子目录项目中。

2/ 另一个问题是,small_fib示例未在Cargo.toml的示例部分指定,但我们可以执行它。

cargo run --release --example small_fib

我认为这个问题不是另一个问题的重复。虽然问题的标题有些令人困惑,但是提问者并不是在询问如何运行示例,而是在询问为什么它在他的情况下有效。 - Sunreef
1个回答

11
要回答你的第一个问题,crypto/stark文件夹将添加到根目录下的Cargo.tomlworkspace部分。请参阅Cargo书籍了解此部分的工作方式:

每当工作区中的任何一个crate被编译时,输出都会放置在工作区根目录(即根crate的Cargo.toml旁边)。

对于你的第二个问题,small_fib.rs文件将放置在crypto/starkexamples文件夹中。它可以直接作为示例运行。我发现这篇文章非常有关于 Rust 示例的信息。

重要的是,您不必再担心如何处理示例代码。您只需要将其放入examples/目录中,然后让Cargo来完成剩下的工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接