Rustc-1.19.0

Introduction à Rust

Le langage de programmation Rust est conçu pour être un langage sûr, concurrent et pratique.

Comme avec tous les langages de programmation, rustc (le compilateur rust) requiert un binaire à partir duquel bootstraper. Il téléchargera un binaire stage0, et plusieurs fichier cargo (ce sont en fait des archives de source en .tar.gz) au début de la construction, donc vous ne pouvez pas le compiler sans connexion internet.

Le système de construction rustbuild actuel utilisera tous les processeurs disponible, bien qu'il ne passe pas bien à l'échelle et n'utilisera souvent qu'un cœur en attendant qu'une bibliothèque se compile.

Pour l'instant Rust ne donne aucune garantie de stabilité de son ABI.

Ce paquet est connu pour se construire correctement sur une plateforme LFS-8.1.

Informations sur le paquet

  • Téléchargement (HTTP) : https://static.rust-lang.org/dist/rustc-1.19.0-src.tar.gz

  • Téléchargement (FTP) :

  • Somme de contrôle MD5 du téléchargement : 75e779670ac79edf023497a9c37eb35d

  • Taille du téléchargement : 48 Mo

  • Estimation de l'espace disque requis : 4.2 Go (362 Mo installés), (plus 0.6 Go pour les tests) plus 273 Mo pour les fichiers ~/.cargo

  • Estimation du temps de construction : 33 SBU (plus 14 SBU pour les tests, dans les deux cas avec 4 processeurs)

Dépendances de Rust

Requises

cURL-7.55.1, CMake-3.9.1, Python-2.7.13

Facultatives

GDB-8.0 (souvent requis pour la suite de tests), Ninja-1.7.2

Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/rust

Installation de Rust

[Note]

Note

Ce paquet est mis à jour sur un cycle de publication toutes les six semaines. Comme c'est un grand et long paquet à construire et qu'il n'est actuellement utilisé que par un paquet dans le livre, les éditeurs de BLFS pensent qu'il ne devrait être mis à jour que lorsque cela est nécessaire.

Tout d'abord créez un fichier config.toml correct qui configurera la construction :

cat <<EOF > config.toml
# see src/bootstrap/config.toml.example for more possible options
[llvm]
targets = "X86"

[build]
# install cargo as well as rust
extended = true

[install]
prefix = "/usr"
docdir = "share/doc/rustc-1.19.0"
channel = "stable"
EOF

Maintenant installez Rust en lançant les commandes suivantes :

./x.py build

Pour lancer les tests lancez ./x.py test --verbose --no-fail-fast >../rustc-testlog : comme avec la construction, cela utilisera tous les CPU. Cela lance plusieurs suites de tests (dans un ordre apparament aléatoire), trois peuvent échouer : compile-fail/issue-37131.rs et run-make/target-without-atomics essayent tous les deux de compiler pour la cible thumbv6m-none-eabi, mais la construction de BLFS ne le permet pas et les 105 tests dans debuginfo-gdb échoueront tous si gdb n'est pas installé.

Si vous souhaitez regarder les résultats, vous pouvez trouvez le nombre total de tests lancés avec :

grep 'running .* tests' ../rustc-testlog | awk '{ sum += $2 } END { print sum }'

Cela devrait rapporter 14029 tests. De même, le nombre de tests échoués peut être trouvé avec :

grep '^test result:' ../rustc-testlog | awk  '{ sum += $6 } END { print sum }'

Et pareil pour les tests qui ont réussi, utilisez $4, pour ceux qui sont ignoré (c'est-à-dire passés) utilisez $8 (et $10 pour les tests mesurés, $12 pour ceux qui ont été filtrés mais ces deux-là sont probablement à 0). La somme ne correspond pas au total.

Maintenant, en tant qu'utilisateur root :

./x.py install

Explication des commandes

targets = "X86" : Cela évite de construire tous les compilateurs croisés pour Linux (Aarch64, MIPS, PowerPC, SystemZ, etc).

extended = true : Cela installe Cargo avec Rust.

channel = "stable" : cela s'assure que seules les fonctionnalités stables peuvent être utilisée, la valeur par défaut dans config.toml est d'utiliser les fonctionnalités de développement, qui ne sont pas appropriées pour une version publique.

--verbose : ce paramètre peut parfois fournir plus d'informations sur un test qui échoue.

--no-fail-fast : ce paramètre s'assure que la suite de tests ne s'arrêtera pas après la première erreur.

Contents

Programmes installés: cargo, rust-gdb, rust-lldb, rustc, rustdoc.
Bibliothèques installées: Beaucoup de bibliothèques lib*<16-byte-hash>.so.
Répertoires installés: ~/.cargo, /usr/lib/rustlib, /usr/share/doc/rustc-1.19.0 et /usr/share/zsh/site-functions/

Descriptions courtes

cargo

est le gestionnaire de paquets de Rust

rust-gdb

est un script Python enveloppe pour gdb

rust-lldb

est un script Python enveloppe pour LLDB (le débogueur de LLVM)

rustc

est le compilateur rust.

rustdoc

génère de la documentation à partir de code source rust.

libstd-<16-byte-hash>.so

est la Bibliothèque Standard de Rust, le fondement des logiciels Rust portables.

Last updated on 2017-08-29 20:35:03 +0200