仅构建 `lib` 目标

Build only `lib` target

我想构建动态 link 库 (dll)。
我的 Cargo.toml 目前看起来像这样:

[package]
name = "sample"
version = "0.1.0"
authors = ["author"]

[lib]
name = "main"
crate-type = ["dylib"]

[dependencies]

我在 windows 上使用带有 RustyCode 插件的 VS Code 作为我的 IDE。 当我 运行 构建命令时,它构建成 sample.exemain.dll.
我知道我可以 运行 cargo build --lib 只构建我的 lib 目标,但我无法在 VS Code (afaik) 中访问此命令。 无论如何指定我只想在我的 Cargo.toml 文件中构建 lib 目标,这样我就可以使用 VS Code 构建命令 运行s cargo build/cargo run?

刚想出来:将 src/main.rs 重命名为 src/lib.rs,它只构建 lib 目标!

Cargo 使用约定优于配置的方法构建文件。当它找到 main.rs 时,它构建一个可执行文件,当它遇到 lib.rs 时,它期望构建一个库。

调用您的库 main 成功混淆了 Cargo。我设法找到的唯一解决方案是将您的板条箱名称从 name = "main" 更改为 name = "foo"(然后将您的 main.rs 重命名为 foo.rs)或将其名称更改为lib.rs,和你一样。