Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rust 我可以使用单个Cargo.toml指定一个存储库结构,但代码有多个版本,每个版本都有单独的main.rs文件吗?_Rust_Rust Cargo - Fatal编程技术网

Rust 我可以使用单个Cargo.toml指定一个存储库结构,但代码有多个版本,每个版本都有单独的main.rs文件吗?

Rust 我可以使用单个Cargo.toml指定一个存储库结构,但代码有多个版本,每个版本都有单独的main.rs文件吗?,rust,rust-cargo,Rust,Rust Cargo,我正在写一本关于嵌入式生锈的书,使用mdbook作为一个git存储库,然后我有另一个由cargo创建的存储库,我把代码放在那里 我想构造代码,使其与书中的章节相对应,因此位于单独的目录中 本书的结构如下: ├── 书 ├── 书卷 └── src ├── 第1.md章 ├── 第2.md章 ├── 第3.md章 ├── 第4.md章 ├── 第5.md章 ├── 第6.md章 └── SUMMARY.md 以及代码的结构: ├── aarch64-unknown-none.json ├── 货

我正在写一本关于嵌入式生锈的书,使用
mdbook
作为一个git存储库,然后我有另一个由
cargo
创建的存储库,我把代码放在那里

我想构造代码,使其与书中的章节相对应,因此位于单独的目录中

本书的结构如下:

├── 书
├── 书卷
└── src
├── 第1.md章
├── 第2.md章
├── 第3.md章
├── 第4.md章
├── 第5.md章
├── 第6.md章
└── SUMMARY.md
以及代码的结构:

├── aarch64-unknown-none.json
├── 货锁
├── 货舱
├── layout.ld
├── 自述文件
├── 第1章
│   └── 梅因
├── 第2章
│   ├── boot.rs
│   └── 梅因
└── 第三章
├── boot.rs
├── 控制台
└── 梅因
我更喜欢这种结构,因为读者可以直接查看章节的代码,而不是搜索git提交。有时我还需要修改一些东西,因此git提交不是一个解决方案


有没有办法在Cargo.toml中指定此格式?要生成所有目录,或在命令行上指定哪个目录。

可以通过示例在中找到确切的解决方案

我对存储库进行了如下重构:

├── aarch64-unknown-none.json
├── 货锁
├── 货舱
├── layout.ld
├── 自述文件
├── 第1章
│   ├── 货舱
│   └── 梅因
├── 第2章
│   ├── boot.rs
│   ├── 货舱
│   └── 梅因
└── 第三章
├── boot.rs
├── 货舱
├── 控制台
└── 梅因
章节目录中的
Cargo.toml
文件保持不变,不做任何修改。只有根目录中的
Cargo.toml
被修改为包含以下内容:

[workspace]
members = ["chapter1", "chapter2", "chapter3"]

此解决方案的一个小缺点是,成员的
货物.toml
中必须有不同的板条箱名称,因为所有成员的输出都存储在工作区根目录中的
目标
目录中。这只是一个小问题,我很欣赏Cargo提供的灵活性。

可以通过示例在中找到确切的解决方案

我对存储库进行了如下重构:

├── aarch64-unknown-none.json
├── 货锁
├── 货舱
├── layout.ld
├── 自述文件
├── 第1章
│   ├── 货舱
│   └── 梅因
├── 第2章
│   ├── boot.rs
│   ├── 货舱
│   └── 梅因
└── 第三章
├── boot.rs
├── 货舱
├── 控制台
└── 梅因
章节目录中的
Cargo.toml
文件保持不变,不做任何修改。只有根目录中的
Cargo.toml
被修改为包含以下内容:

[workspace]
members = ["chapter1", "chapter2", "chapter3"]

此解决方案的一个小缺点是,成员的
货物.toml
中必须有不同的板条箱名称,因为所有成员的输出都存储在工作区根目录中的
目标
目录中。这只是一个小问题,我很感激货物提供的灵活性。

您看过了吗?谢谢。这正是我想要的。你应该用一个例子自我回答,说明如何在这种情况下使用它。你看过了吗?谢谢。这正是我想要的。你应该用一个例子来说明如何在这种情况下使用它。