此外,我们还将添加predicates crate,它可以帮助我们编写断言,assert_cmd可以对其进行测试(并且具有出色的错误消息)。我们将这些依赖项添加到Cargo.toml的dev dependencies部分,而不是主列表中。它们只在开发crate时需要,而在使用crate时不需要。 [dev-dependencies] assert_cmd = "2.0.12" predicates = "3.0.3" 我们...
它们是仅为示例、测试和基准测试而包含/构建的依赖项。当你运行一个简单的cargo build时,它们不会被包...
所以,我们第一步的操作就是处理Cargo.toml的配置信息。下面我们就直接贴出了,我们项目最后的配置内容。里面的[dependencies]我们在下面代码讲解中介绍。 [package]我们就不需要多介绍了,它主要描述了该项目的一些基本信息。 [dependencies]的话,标注了我们项目中需要引入的第三方crate 上面有两个东西我们可能感到陌生。
添加依赖:在项目的Cargo.toml文件中,可以通过在[dependencies]部分添加依赖来指定项目所需的外部crate。例如: [dependencies] rand = "0.8.3" 复制代码 添加开发依赖:除了常规的依赖外,还可以在Cargo.toml中的[dev-dependencies]部分添加开发时所需的依赖。例如: [dev-dependencies] rustfmt = "0.9" 复制代码 添加...
[dependencies]+libc = { version = "0.2.138", default-features = false }-libc = { version = "0.2.138" } 关掉libc功能后没有任何变化。(测试于Linux,数据越小越好) 构建时间没有任何变化,有可能 std 功能实际没什么大影响。不管怎么说,让我们进入下一个环节。
环境Rust 1.56.1 VSCode 1.61.2 概念 参考:https://doc.rust-lang.org/stable/rust-by-example/testing/dev_dependencies.html 示例 main.rs #[cfg(test)] #[macro_use]
在正式开发中,我们不会直接和embedded-hal打交道,而是使用各个厂家MCU对应的上层hal实现。我们使用的MCU是stm32h7b0,因此,直接去stm32-rs下面搜索stm32h7,就能看到对应的hal库stm32h7xx-hal了。当然也可以去crates.io搜索,一样的。使用对应的hal库也非常简单,在Cargo.toml的[dependencies]下面添加一行 ...
[dependencies]+libc={version="0.2.138",default-features=false}-libc={version="0.2.138"} 关掉libc功能后没有任何变化。(测试于Linux,数据越小越好) 构建时间没有任何变化,有可能 std 功能实际没什么大影响。不管怎么说,让我们进入下一个环节。
最后一行文本中[dependencies]同样是一个区域标签,它表明随后的区域会被用来声明项目的依赖。在Rust中,把代码的集合称为包Crate。 ❝crate是Rust中最小的「编译单元」,package是单个或多个crate。 ❞ 其他 Cargo为我们生成了一个输出Hello,Rust的程序。并且源文件main.rs被放置到了src目录下,在项目目录下多了一...
# Cargo.toml中加入[dependencies]ferris-says="0.1" # 编译 后可在target目录中找到可执行文件$ cargo build # 或者直接运行 $ cargo run Finished dev [unoptimized + debuginfo] target(s) in 1.79s Running `target/debug/myhello` --- | Hello fellow Rustaceans! | --- \ \ _~^~^~_ \) / ...