一、什么是 cargo install
?
cargo install
命令专门用于安装那些包含可执行目标的包,也就是说,这些包中必须有一个或多个二进制目标(binary target)。与传统的系统软件包管理器不同,cargo install
并不是用来替换系统包,而是为 Rust 开发者提供了一种简洁的方式来安装和管理命令行工具。
需要注意的是,只有当包中包含类似 src/main.rs
(或者在 Cargo.toml 中指定了其他二进制文件)的二进制目标时,才能使用 cargo install
进行安装。如果一个包仅提供库代码,那么它不能被直接安装为可执行程序。
二、安装后的文件存放位置
所有使用 cargo install
安装的二进制文件都会存储在安装根目录的 bin
文件夹中。如果你是通过 rustup.rs 安装的 Rust,并且没有做过其他配置,那么这个目录通常是 $HOME/.cargo/bin
。
为了能够在命令行中直接运行这些工具,确保 $HOME/.cargo/bin
已经添加到你的 $PATH
环境变量中。可以在终端中执行如下命令检查:
bash
echo $PATH
如果没有看到 $HOME/.cargo/bin
,你需要在 shell 的配置文件中(例如 .bashrc
或 .zshrc
)添加如下行:
bash
export PATH="$HOME/.cargo/bin:$PATH"
三、示例:安装 ripgrep
ripgrep
是一个用 Rust 实现的文本搜索工具,功能类似于传统的 grep
,但性能更强、使用更简单。下面的命令展示了如何通过 cargo install
安装 ripgrep
:
bash
$ 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` profile [optimized + debuginfo] target(s) in 10.64s
Installing ~/.cargo/bin/rg
Installed package `ripgrep v13.0.0` (executable `rg`)
安装过程中,Cargo 会自动从 crates.io 下载 ripgrep
及其依赖,并编译生成可执行文件。注意输出中倒数第二行显示了安装位置和生成的二进制名称(在此例中为 rg
)。只要你的 $PATH
包含了安装目录,你就可以在终端中直接运行:
bash
$ rg --help
这时,你会看到 ripgrep
的使用帮助信息,从而开始体验这个高效的搜索工具。
四、总结
cargo install
的作用:它允许你从 crates.io 安装带有二进制目标的包,而不是库包,从而在本地使用命令行工具。- 安装位置 :所有二进制工具都安装在
$HOME/.cargo/bin
中,请确保该目录已添加到$PATH
环境变量中。 - 使用示例 :本文以
ripgrep
为例,演示了如何使用cargo install
下载、编译和安装 Rust 工具。
通过 cargo install
,你可以轻松获取社区中各种优秀的 Rust 工具,体验 Rust 生态带来的便捷与高效。如果你有更多关于 Rust 工具安装的经验或问题,欢迎在评论区分享讨论!
希望这篇博客能帮助你更好地理解和使用 cargo install
。Happy coding!