ubuntuusers.de

cargo

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Ausbaufähige Anleitung

Dieser Anleitung fehlen noch einige Informationen. Wenn Du etwas verbessern kannst, dann editiere den Beitrag, um die Qualität des Wikis noch weiter zu verbessern.


Anmerkung: Der Artikel beschreibt primär die Installation von Rust Paketen via cargo. Der Artikel kann / sollte noch um Beispiele erweitert werden, wie man eigene Projekte anlegt und übersetzt.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

cargo_logo.png cargo 🇬🇧 ist der Paketmanager der Programmiersprache Rust 🇬🇧. cargo hat eine wichtige Rolle im Ökosystem von Rust, der Paketmanager ist der zentrale Punkt beim Erstellen neuer Programme / Projekt, hilft beim Publizieren und dient zur Installation von Rust-Programmen auf dem lokalen Rechner.

Installation

cargo kann direkt aus den Paketquellen installiert werden:

  • cargo (universe)

Befehl zum Installieren der Pakete:

sudo apt-get install cargo 

Oder mit apturl installieren, Link: apt://cargo

Hinweis:

Bei der Installation wird Rust sowie der LLVM Compiler als direkte Abhängigkeit mit installiert. Dies lässt sich nicht vermeiden bzw. ist auch notwendig, da bei der Installation von Rust Paketen via cargo diese direkt auf dem Rechner kompiliert werden.

Benutzung

Die allgemeine Syntax von cargo lautet[2]:

cargo KOMMANDO [OPTIONEN] 

Eine Übersicht über alle Kommandos bekommt man mit

cargo --list 

Recht ausführliche Informationen zu einem Kommando erhält man via

cargo help KOMMANDO 

Pakete installieren

cargo kann fertige Pakete und darin enthaltene, lauffähige Programme auf dem lokalen Rechner installieren. Die zentrale Stelle der Rust-Community für fertige Pakete ist crates.io 🇬🇧, welches "The Rust community’s crate registry" ist. Es ist aber auch die Installation aus einem Git-Repositry oder von lokale gespeicherten Paketen möglich.

Die Installation eines Pakets von crates.io erfolgt mit dem Befehl

cargo install NAME_DES_PAKETS 

Dabei wird automatisch die neuste Version heruntergeladen, kompiliert und dann im Home-Verzeichnis des ausführenden Benutzer nach ~/.cargo/bin installiert.

Hinweis:

~/.cargo/bin muss zusätzlich noch der Umgebungsvariablen PATH hinzugefügt werden, damit die dort gespeicherten, ausführbaren Programm auch gefunden werden.

Möchte man gezielt eine ältere Version eines Pakets installieren, kann zusätzlich die Versionsnummer angegeben werden:

cargo install  NAME_DES_PAKETS --vers VERSIONSNUMMER 

VERSIONSNUMMER muss dabei normalerweise die Struktur MAJOR.MINOR.PATCH haben, also z.B. 1.2.3 .

Zum Aktualisieren eines Pakets führt man einfach den cargo install PAKETNAME Befehl nochmals aus. Ist eine neuere Version des Pakets verfügbar wird es installiert. Hat man die neuste Version installiert bekommt man den Hinweis, dass man die neuste Version bereits hat.

Möchte man das Paket in einem anderen Pfad als ~/.cargo/bin installieren, muss man die Option --root /PFAD/ZUM/VERZEICHNIS wählen. Darin wird dann immer das Verzeichnis bin angelegt. D.h. wenn man ein Programm systemweit installieren wollte, müsste man --root /usr/local angeben und den Befehl natürlich mit Root-Rechten ausführen.

Man kann mittels cargo auch direkt Pakete auf einem Git-Repositry installieren, und zwar mit dem Befehl

cargo install --git https://PFAD/ZUM/REPO/PROJEKT.git
#Beispiel:
cargo install --git https://github.com/theryangeary/choose.git 

Man kann hier auch zusätzlich Optionen angeben, um gezielt einen Git-Branch, einen Revision der einen Tag zu installieren, Details sind in der Dokumentation 🇬🇧 zu finden.

Um alle für den ausführenden Benutzer via cargo installieren Pakete aufzulisten, führt man den folgenden Befehl aus:

cargo install --list 

Möchte man auf crates.io nach Paketen suchen, kann man das mit dem folgenden Befehl:

cargo search SUCHBEGRIFF 

Standardmäßig werde 10 Suchtreffer ausgegeben. Möchte man mehr Treffer sehen (falls vorhanden), dann kann zusätzlich die Option --limit N angeben, wobei N die Anzahl der anzuzeigenden Suchtreffer ist.

Diese Revision wurde am 13. Januar 2023 14:17 von noisefloor erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Paketinstallation, Programmierung, Rust