Установка бинарных файлов с помощью cargo install

Команда cargo install позволяет вам локально устанавливать и использовать бинарные крейты. Это не предназначено для замены системных пакетов; это удобный способ для Rust-разработчиков устанавливать инструменты, которые другие разместили на crates.io. Обратите внимание, что вы можете устанавливать только пакеты, которые имеют бинарные цели. Бинарная цель — это запускаемая программа, которая создается, если крейт имеет файл src/main.rs или другой файл, указанный как бинарный, в отличие от библиотечной цели, которая не является запускаемой сама по себе, но подходит для включения в другие программы. Обычно крейты содержат информацию в файле README о том, является ли крейт библиотекой, имеет бинарную цель или и то, и другое.

Все бинарные файлы, установленные с помощью cargo install, сохраняются в папке bin корневой директории установки. Если вы установили Rust с помощью rustup.rs и не имеете пользовательских конфигураций, этой директорией будет $HOME/.cargo/bin. Убедитесь, что эта директория находится в вашем $PATH, чтобы иметь возможность запускать программы, установленные с помощью cargo install.

Например, в главе 12 мы упоминали, что существует реализация инструмента grep на Rust под названием ripgrep для поиска по файлам. Чтобы установить ripgrep, мы можем выполнить следующее:

$ cargo install ripgrep
    Updating crates.io index
  Downloaded ripgrep v14.1.1
  Downloaded 1 crate (213.6 KB) in 0.40s
  Installing ripgrep v14.1.1
--snip--
   Compiling grep v0.3.2
    Finished `release` profile [optimized + debuginfo] target(s) in 6.73s
  Installing ~/.cargo/bin/rg
   Installed package `ripgrep v14.1.1` (executable `rg`)

Предпоследняя строка вывода показывает местоположение и имя установленного бинарного файла, который в случае с ripgrep называется rg. При условии, что директория установки находится в вашем $PATH, как упоминалось ранее, вы можете затем запустить rg --help и начать использовать более быстрый и "растовский" инструмент для поиска по файлам!