如何使用 release 编译一些依赖项

Dzm*_*rka 3 rust rust-cargo

我想用“dev”配置文件构建我的 rust 应用程序,但是一些依赖关系用“release”配置文件(因为否则它们真的很慢)。如何有选择地为我的 crate 依赖项指定配置文件?

Öme*_*den 7

Cargo 能够覆盖特定包裹的配置文件。

参考

可以覆盖特定包和构建时板条箱的配置文件设置。要覆盖特定包的设置,请使用包表更改指定包的设置:

# The `foo` package will use the -Copt-level=3 flag.
[profile.dev.package.foo]
opt-level = 3
Run Code Online (Sandbox Code Playgroud)

使用dev配置文件编译时,这将覆盖foo包的优化级别。


  • 如果您想使用dev配置文件中的默认值和更多来自release配置文件的默认值来优化一些依赖项:
#override target package to build with dev default(opt-level) 
[profile.dev.package.bar]
opt-level = 0 

#override all other dependencies to build with release default(opt-level) 
[profile.dev.package."*"]
opt-level = 3
Run Code Online (Sandbox Code Playgroud)
  • 如果您想优化除应用程序之外的所有依赖项(还有工作区成员
[profile.dev.package."*"]
opt-level = 3
Run Code Online (Sandbox Code Playgroud)

也可以看看 :