## 使用 `cargo install` 安装二进制文件

> ch14-04-installing-binaries.md
> commit 704c51eec2f26a0133ae17a2c01986590c05a045

`cargo install` 命令用于在本地安装和使用二进制 crate。它并不打算替换系统中的包；它意在作为一个方便 Rust 开发者们安装其他人已经在 crates.io 上共享的工具的手段。只有拥有二进制目标文件的包能够被安装。二进制目标 文件是在 crate 有 src/main.rs 或者其他指定为二进制文件时所创建的可执行程序，这不同于自身不能执行但适合包含在其他程序中的库目标文件。通常 crate 的 README 文件中有该 crate 是库、二进制目标还是两者兼有的信息。

所有来自 `cargo install` 的二进制文件都安装到 Rust 安装根目录的 bin 文件夹中。如果你是使用 rustup.rs 来安装 Rust 且没有自定义任何配置，这个目录将是 `$HOME/.cargo/bin`。确保将这个目录添加到 `$PATH` 环境变量中就能够运行通过 `cargo install` 安装的程序了。

例如，第十二章提到的叫做 `ripgrep` 的用于搜索文件的 `grep` 的 Rust 实现。为了安装 `ripgrep` 运行如下：

    $ cargo install ripgrep
        Updating crates.io index
      Downloaded ripgrep v13.0.0
      Downloaded 1 crate (243.3 KB) in 0.88s
      Installing ripgrep v13.0.0
    --snip--
       Compiling ripgrep v13.0.0
        Finished release [optimized + debuginfo] target(s) in 3m 10s
      Installing ~/.cargo/bin/rg
       Installed package `ripgrep v13.0.0` (executable `rg`)

最后一行输出展示了安装的二进制文件的位置和名称，在这里 `ripgrep` 被命名为 `rg`。只要你像上面提到的那样将安装目录加入 `$PATH`，就可以运行 `rg --help` 并开始使用一个更快更 Rust 的工具来搜索文件了！