根据目标平台生成 Rust 可执行文件或库

Generating Rust executable or library, depending on the target platform

我的 Rust 项目目标是 Windows 和 Linux。

在 Windows 上,代码需要 link 编辑为可执行文件,而在 Linux 上 - 作为共享库。

为了 link 作为 Linux 共享库的项目,我将以下部分添加到 Cargo.toml

[lib]
name = "my_project_name"
crate-type = ["cdylib"]

然而,这也会导致在 Windows 上生成共享库。

有没有办法告诉 Rust 编译器 link 项目在 Windows 上作为可执行文件并在 Linux 上作为库?

据我所知,现在不可能这样做。我能找到的最接近的信息是 this 类似用例。