如何用release编译一些依赖

How to compile some dependencies with release

我想使用 "dev" 配置文件构建我的 rust 应用程序,但一些依赖项使用 "release" 配置文件(否则它们真的很慢)。我如何有选择地为我的板条箱依赖项指定配置文件?

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

来自 reference :

Profile settings can be overridden for specific packages and build-time crates. To override the settings for a specific package, use the package table to change the settings for the named package:

# The `foo` package will use the -Copt-level=3 flag.
[profile.dev.package.foo]
opt-level = 3

在使用 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

  • 如果你想优化除了你的所有依赖项 应用程序(也是工作区成员
[profile.dev.package."*"]
opt-level = 3

另请参阅: