Boost offre un ensemble de bibliothèques sources libres, revues par les pairs et portables en C++. Il inclut des bibliothèques d'algèbre linéaire, de génération de nombres pseudo-aléatoires, de multithreading, de traitement d'images, d'expressions régulières et de tests d'unités.
Ce paquet est connu pour se construire correctement sur une plateforme LFS-9.1.
Téléchargement (HTTP) : https://dl.bintray.com/boostorg/release/1.72.0/source/boost_1_72_0.tar.bz2
Somme de contrôle MD5 du téléchargement : cb40943d2a2cb8ce08d42bc48b0f84f0
Taille du téléchargement : 102 Mo
Estimation de l'espace disque requis : 1.0 Go (168 Mo installés)
Estimation du temps de construction : 1.5 SBU (avec parallélisme = 4, plus 1.3 SBU pour les tests)
Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/boost
On peut construire ce paquet avec plusieurs taches en parallèle.
Dans les instructions ci-dessous, <N>
correspond au nombre de
taches. Installez Boost en lançant
les commandes suivantes :
./bootstrap.sh --prefix=/usr &&
./b2 stage -j<N>
threading=multi link=shared
Pour lancer les tests de régression de Boost.Build, Python-2.7.17 est requis. Lancez les tests avec : pushd tools/build/test; python3 test_all.py; popd. Les 152 tests devraient tous réussir.
Pour lancer tous les tests de régression de chaque bibliothèque,
tapez pushd status; ../b2;
popd. Quelques tests peuvent échouer. Ils prennent
beaucoup de temps (plus de 119 SBU avec -j4) et utilisent un espace
disque volumineux (46 Go). Vous devriez utiliser le paramètre
-jN
pour les accélérer.
Maintenant, en tant qu'utilisateur root
:
./b2 install threading=multi link=shared && ln -svf detail/sha1.hpp /usr/include/boost/uuid/sha1.hpp
threading=multi
: ce
paramètre assure que Boost soit
bien construit avec le support du multithreading.
link=shared
: Ce
paramètre fait que seules les bibliothèques partagées sont créées,
excepté pour libboost_exception et libboost_test_exec_monitor qui
sont créés statiquement. La plupart des gens n'auront pas besoin
des bibliothèques statiques et la plupart des programmes utilisant
Boost se servent uniquement des
en-têtes. Vous pouvez omettre ce paramètre si vous avez besoin des
bibliothèques statiques.
ln -svf detail/sha1.hpp
...
: Le fichier uuid/sha1.hpp
était un en-tête normal, mais à
partir de boost_1_66_0 cela a été changé pour charger l'en-tête
detail/sha1.hpp
similaire, avec un
message disant qu'il est obsolète. Il est maintenant supprimé, mais
tous les paquets qui l'utilisent n'ont pas été modifiés. Par
exemple c'est le cas d'une des bibliothèques téléchargées via sa
version git par libreoffice. Le lien symbolique permet à ce paquet
et d'autres similaires d'être construits.
-jN
: Ce paramètre peut être
utilisé dans la ligne de commande b2, pour lancer N processus en
parallèle.
--with-python=python3
: Ajoutez
cette option à la commande bootstrap si vous souhaitez que
Boost utilise Python3 à la place de Python2. L'utilisation de
Python3 est connue pour faire échouer l'installation sur certains
systèmes.
Last updated on 2020-02-16 21:25:07 +0100