cargo install e qrust install sono lo stesso comando. QuickRust compila il programma come qualsiasi altra build (passando per la sua cache degli artefatti, quindi le dipendenze che hai già compilato in precedenza non vengono compilate di nuovo) e mette i binari in ~/.qrust/bin, che qrust setup ha aggiunto al tuo PATH.
Installa da crates.io
cargo install ripgrep
cargo install [email protected] # una versione esatta
cargo install ripgrep --version '^14' # un requisito di versione
cargo install cargo-nextest --locked # con il lockfile con cui il crate è stato pubblicato
Senza una versione, QuickRust installa la release più recente che non sia stata ritirata (yanked), che non sia una pre-release e che funzioni con la versione di Rust della toolchain.
Usa --locked quando gli autori del programma lo consigliano: la build usa allora le versioni delle dipendenze che hanno pubblicato. Se il crate è stato pubblicato senza lockfile, QuickRust lo segnala e risolve le dipendenze da capo.
Più crate in una volta vengono installati uno dopo l’altro; una riga di riepilogo dice quanti sono riusciti, e lo stato di uscita è diverso da zero se qualcuno è fallito:
cargo install ripgrep fd-find bat
Installa da un altro registro
cargo install mytool --registry internal
Il registro deve essere configurato nella home di Cargo di QuickRust, ~/.qrust/cargo/config.toml, dove qrust setup ha importato i tuoi registri; il suo token viene da ~/.qrust/cargo/credentials.toml o dall’ambiente, come per Cargo. Il .cargo/config.toml di un progetto non viene consultato, perché la release viene risolta al di fuori di qualsiasi progetto. La sostituzione dei sorgenti ([source] con replace-with) si applica come in una build. --index URL non è supportato: indica il registro nella configurazione e usa --registry.
Installa da Git o da una directory locale
cargo install --git https://github.com/BurntSushi/ripgrep
cargo install --git https://github.com/BurntSushi/ripgrep --tag 14.1.1
cargo install --git https://example.com/tools.git --branch main mytool # indica il pacchetto quando il repository ne contiene più di uno
cargo install --path .
--git richiede git nel PATH. --path compila il pacchetto dove si trova; se la directory è un workspace con più pacchetti che hanno dei binari, indica quello che vuoi.
Scegli che cosa viene compilato e dove va a finire
--bin NAME(ripetibile) o--bins,--example NAMEo--examplesselezionano i target.--features F,--all-features,--no-default-featuresselezionano le feature.--profile Po--debugcambiano il profilo (release per impostazione predefinita);--target Tesegue una compilazione incrociata.--root DIRinstalla inDIR/bininvece che in~/.qrust/bin.CARGO_INSTALL_ROOTnon viene usata: se è impostata, il comando si ferma e chiede--root.-j,--config,--offline,--frozen,--ignore-rust-version,-qe-vvengono passati alla build.
Sostituisci o reinstalla
Installare di nuovo un programma con la stessa versione, la stessa origine, le stesse feature, lo stesso profilo e lo stesso target non fa nulla:
OK tool 0.1.0 is installed already (--force installs it again) [10ms]
Una versione più recente, o opzioni diverse, installano sopra quella vecchia. QuickRust si rifiuta di sovrascrivere un file nella directory bin che sia stato installato da un altro pacchetto, o che non abbia installato affatto lui, a meno che tu non passi --force. Non installa mai sopra i propri programmi (cargo, rustc, qrust e gli altri nomi della toolchain), nemmeno con --force.
Elenca e rimuovi i programmi
cargo install --list
cargo uninstall ripgrep
cargo uninstall ripgrep --bin rg # un solo binario di un pacchetto
cargo install --list --root ~/tools # con --root, per quella radice
tool v0.1.0 (/home/me/src/tool):
tool
Vedi anche
- Comandi per ogni opzione di
installeuninstall - File e directory per
installs.jsone i sorgenti delle installazioni nella cache