Rust 使用 cargo install 從 Crates.io 安裝二進(jìn)制文件

2023-03-22 15:12 更新
ch14-04-installing-binaries.md
commit 359895c6b2e440275a663ee1a3c17e6a94fdc62b

cargo install 命令用于在本地安裝和使用二進(jìn)制 crate。它并不打算替換系統(tǒng)中的包;它意在作為一個(gè)方便 Rust 開發(fā)者們安裝其他人已經(jīng)在 crates.io 上共享的工具的手段。只有擁有二進(jìn)制目標(biāo)文件的包能夠被安裝。二進(jìn)制目標(biāo) 文件是在 crate 有 src/main.rs 或者其他指定為二進(jìn)制文件時(shí)所創(chuàng)建的可執(zhí)行程序,這不同于自身不能執(zhí)行但適合包含在其他程序中的庫目標(biāo)文件。通常 crate 的 README 文件中有該 crate 是庫、二進(jìn)制目標(biāo)還是兩者都是的信息。

所有來自 cargo install 的二進(jìn)制文件都安裝到 Rust 安裝根目錄的 bin 文件夾中。如果你使用 rustup.rs 安裝的 Rust 且沒有自定義任何配置,這將是 $HOME/.cargo/bin。確保將這個(gè)目錄添加到 $PATH 環(huán)境變量中就能夠運(yùn)行通過 cargo install 安裝的程序了。

例如,第十二章提到的叫做 ripgrep 的用于搜索文件的 grep 的 Rust 實(shí)現(xiàn)。如果想要安裝 ripgrep,可以運(yùn)行如下:

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

最后一行輸出展示了安裝的二進(jìn)制文件的位置和名稱,在這里 ripgrep 被命名為 rg。只要你像上面提到的那樣將安裝目錄加入 $PATH,就可以運(yùn)行 rg --help 并開始使用一個(gè)更快更 Rust 的工具來搜索文件了!


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)