7得票1回答
使用单个共享目录作为所有项目的Cargo目标目录是否可行?

Cargo有一个--target-dir标志,用于指定存储临时或缓存构建生成物的目录。您还可以在~/.cargo/config文件中设置用户级别的目录。我想将其设置为单个共享目录,以使维护更容易。 我看到一些生成物目录在目标目录中加了一些唯一的(?)哈希后缀,这看起来很安全,但最终产物没有加...

23得票1回答
如何从函数中返回当前工作目录?

拥有高级编程语言的经验。我读了Rust的书,现在正在努力理解和生存 Rust 中的“东西”是如何工作的。我希望有人能解释一下- Ok(()) 究竟是什么,以及如何处理它?我的目标是将函数的结果返回到输出变量中: Finished dev [unoptimized + debuginf...

11得票2回答
如何覆盖Cargo配置目录的位置?

看起来,Cargo在搜索其配置目录时的默认行为是查找当前用户的主目录(在我的系统上为~/.cargo)。如何修改此行为,使Cargo查找用户提供的目录呢?

146得票1回答
如何使用Rust中的cfg检查发布/调试构建?

使用C预处理器进行以下操作很常见:#if defined(NDEBUG) // release build #endif #if defined(DEBUG) // debug build #endif Cargo的粗略等价物为: cargo build --releas...

11得票4回答
如何为货物测试获取覆盖率?

当我想要测试C ++覆盖率时,可以使用-fprofile-arcs -ftest-coverage编译程序,运行所有测试,并运行gcov获得覆盖率。 但是,当涉及到Rust时,我完全迷失了。我想要做的是在我的Mac上运行以下测试,并获得路径components/raftstore中所有Rus...

8得票1回答
如何为目标设置货物不稳定选项?

我有一个名为.cargo/config.toml的文件,内容如下: [unstable] unstable-options = true build-std = ["core", "alloc"] 但是我只需要build-std适用于一个目标(例如thumbv7em-none-eabih...

26得票2回答
使用Rust Cargo作为构建系统的软件的配置/安装计划方式是什么?

现有的构建系统通常都有某种安装目标,这些目标可以手动使用(安装到/usr/local或其他用户可访问的位置),也可以自动使用(通过基于二进制的发行版的软件包构建系统或基于源代码的软件包管理器)。 使用Cargo的软件的预期安装方式是什么?类似make install的模拟应该是什么样子的? ...

19得票1回答
如何在Cargo.toml的"dependencies"和"dev-dependencies"下拉取带有不同特性的依赖项?

假设你有一个名为“dep”的依赖项,其中有两个名为f1和f2的特性。当我正常构建我的crate时,我想使用“dep”与f1功能,但在构建测试时要使用f2功能。我知道dev-dependencies是我们需要用于测试的依赖项,因此认为下面的Cargo.toml结构应该有效: [dev-de...

9得票1回答
为什么使用`cargo build --release`编译后再运行`cargo run`,Rust会重新编译我的项目?

Rust文档告诉我们,cargo build在编译后创建一个二进制文件,然后我们可以使用cargo run来执行。如果在执行cargo build命令后注意到任何更改,cargo run将再次编译代码。它还说,cargo build --release命令会创建最终程序,这将运行得更快。 我...

32得票2回答
“清单路径是虚拟清单,但此命令需要针对实际软件包运行”的意思是什么?

我正在尝试构建一个Rust项目(xray)。在运行cargo run时,我收到以下错误消息: 错误:清单路径D:\xray\building\xray\Cargo.toml是一个虚拟清单,但此命令需要对此工作区中的实际包进行运行。 这到底是什么意思,如何解决?我使用的是Cargo版本0.2...