Как передать флаги rustc на груз?

Я пытаюсь отключить предупреждения о мертвом коде. Я попробовал следующее

cargo build -- -A dead_code

➜ rla git:( мастер) ✗ сборка груза - - мертвый_код error: Недопустимые аргументы.

Так что мне интересно, как передать аргументы rustc на груз?

Ответ 1

Вы можете передавать флаги через Cargo несколькими различными способами:

  • cargo rustc, которая влияет только на ваш ящик, а не на его зависимости.
  • RUSTFLAGS окружения RUSTFLAGS, которая также влияет на зависимости.
  • Некоторые флаги имеют правильную опцию Cargo, например, -C lto и -C panic=abort могут быть указаны в файле Cargo.toml.
  • Добавьте флаги в .cargo/config используя один из ключей rustflags=.

Однако в вашем конкретном случае настройки линков вам не нужно использовать флаги компилятора; Вы также можете включать и отключать линты непосредственно в исходном коде, используя атрибуты. На самом деле это может быть лучшим вариантом, так как он более надежный, более целенаправленный и не требует изменения настроек системы сборки:

#![deny(some_lint)] // deny lint in this module and its children

#[allow(another_lint)] // allow lint in this function
fn foo() {
    ...
}

Смотрите также: