Rustc-1.16.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 fournit
aucune garanti sur la stabilité de l'ABI et il est probable que les
prochaines versions de firefox
requerront la dernière version de Rust.
Ce paquet est connu pour se construire correctement sur une
plateforme LFS-8.0.
Informations sur le paquet
-
Téléchargement (HTTP) : https://static.rust-lang.org/dist/rustc-1.16.0-src.tar.gz
-
Téléchargement (FTP) :
-
Somme de contrôle MD5 du téléchargement :
c11d94d9e62f71838b20058f0797357a
-
Taille du téléchargement : 28 Mo
-
Estimation de l'espace disque requis : 1.5 Go (208 Mo
installés) plus 118 Mo pour les fichiers cargo
-
Estimation du temps de construction : 14 SBU (avec 4
processeurs)
Dépendances de Rust
Requises
cURL-7.55.1, CMake-3.9.1 (si vous n'utilisez pas
LLVM-3.9.1 recommandé), Python-2.7.13
Recommandées
LLVM-3.9.1
Facultatives
GDB-8.0
(souvent requis pour la suite de tests, mais mais certains tests
gdb peuvent encore échouer), Ninja-1.7.2
Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/rust
Installation de Rust
Installez Rust en lançant les
commandes suivantes :
./configure --prefix=/usr \
--llvm-root=/opt/llvm3 \
--enable-llvm-link-shared \
--docdir=/usr/share/doc/rustc-1.16.0 &&
./x.py build
La suite de tests dans ce paquet sélectionne un sous-ensemble
aléatoire des tests possibles. Il n'y a pas de corrélation entre la
longueur d'une exécution particulière de la suite de tests et le
nombre de tests lancés. Parfois les tests choisis tourneront en
bien moins que 1.0 SBU, et parfois en bien plus que 20 SBU. Bien
qu'il soit normal de lancer la suite de tests pour un compilateur,
dans ce cas elle est difficile à recommander.
Cependant, si vous insistez pour lancer les tests, lancez
./x.py test :
comme pour la construction, cela utilisera tous les CPU
disponibles.
Maintenant, en tant qu'utilisateur root
:
test -f /usr/lib/libLLVM-3.9.so ||
ln -sv /opt/llvm3/lib/libLLVM-3.9.so /usr/lib &&
./x.py dist --install
Explication des commandes
--llvm-root=/opt/llvm3
--enable-llvm-link-shared : Ceci dit à rust
d'utiliser la version du système de llvm3 installée dans
/opt/llvm3
pour se lier aux
bibliothèques dynamiques.
--enable-dist-host-only
: Si vous
n'avez pas installé la version du système de LLVM-3.9.1, utilisez cette
commande alternative pour construire la version statique de llvm
incluse. Cela compilera les
compilateurs croisés pour toutes les architectures Linux (Aarch64,
MIPS, PowerPC, SystemZ, etc) mais avec ce paramètre, cela
n'installera que pour
l'architecture de l'hôte.
RUSTFLAGS="$RUSTFLAGS -C
link-args=-lffi"
: utilisez ceci si vous avez besoin de
lier une version de LLVM-3 qui a été compilée avec libffi-3.2.1.
ln -sv /opt/llvm3/lib/libLLVM-3.9.so
/usr/lib : Bien que la construction de Rust trouve les bibliothèques partagées dans
/opt/llvm3/lib
, plusieurs étapes
lancées par l'installeur
rustbuild ne trouvent pas
libLLVM-3.9.so
. Ce lien symbolique
conditionnel corrige cela et fonctionne même si libLLVM-3.9.{0,1}
a déjà été installé dans
/usr
. Passez cette commande si vous n'avez pas installé
une version du système de LLVM-3.9.1
Contents
Programmes installés:
rust-gdb, rust-lldb, rustc,
rustdoc.
Bibliothèques installées:
Plusieurs bibliothèques (libarena,
libflate, libfmt_macros, libgetopts, libgraphviz, liblog,
libproc_macro, librustc*, libserialize, libstd, libsyntax,
libterm, libtest), contenant toutes un hash dans leur
nom.
Répertoires installés:
~/.cargo, /usr/lib/rustlib et
/usr/share/doc/rustc-1.16.0.
Descriptions courtes
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-05-14 08:08:05 +0200