J’ai téléchargé boost 1.55 et MinGW. La console me répond que je n’ai aucune commande. Je ne peux pas comprendre comment lier 2 chemin et activer le compilateur gcc. PS Si je construis boost avec Microsoft Comstackr, j’aurai environ 8 erreurs avec l’erreur 3861 !!
Comment puis-je le construire?
Assurez-vous d’abord que le répertoire bin de votre mingw se trouve dans votre environnement PATH
afin que gcc
et g++
puissent être appelés à partir de votre invite de commande. Ensuite, allez dans le répertoire racine de votre boost où vous avez extrait les fichiers.
Suivez cela avec un bootstrap + b2.exe à construire. Par exemple, supposons que vous souhaitiez uniquement comstackr la partie regex de boost. Les commandes suivantes devraient faire l’affaire:
bootstrap gcc b2 toolset=gcc regex
Vous pouvez utiliser:
b2 --show-libraries
pour obtenir une liste des modules que vous pouvez construire individuellement. Bien sûr, vous pouvez tous les construire avec juste:
b2 toolset=gcc
Consultez Invocation Boost pour une liste détaillée des options disponibles.
La réponse de Greatwolf n’a pas fonctionné pour moi, alors voici comment j’ai réussi à le faire fonctionner.
Tout d’abord, assurez-vous que MinGW\bin
est sur votre chemin
Accédez au répertoire tools\build\v2
de votre dossier boost. Par exemple, dans mon cas c’était C:\Boost\boost_1_55_0\tools\build\v2
. Puis courir
bootstrap mingw
Après cela, passez au répertoire racine Boost (cette partie est importante car b2 détecte ce qu’il faut construire en fonction du répertoire en cours)
Maintenant, si vous voulez construire le système de fichiers, faites
tools\build\v2\b2 toolset=gcc --build-type=complete stage --with-filesystem
Cela mettra libboost_filesystem-mgw48-d-1_55.dll
etc. dans stage\lib
. Si vous voulez tout construire, laissez simplement la partie --with-filesystem
.
J’ai pu le construire en suivant les instructions d’Antimony. Cependant, j’ai initialement eu cette erreur:
Bootstrapping the build engine \Windows was unexpected at this time.
L’erreur a été résolue en effaçant la variable PATH et en y mettant juste le dossier MinGW:
set PATH=C:\MinGW\bin
Les instructions d’Antimony ont ensuite fait le travail pour moi. Merci!!
Juste deux autres petites choses qui pourraient être utiles. BOOST for MinGW doit être généré à partir du shell Windows et non du shell MSYS. Et dans la version 1.57, le script bootstrap.bat n’est plus dans tools \ build \ v2, mais directement dans tools \ build.
Si vous avez installé MinGW / GCC dans le cadre de TDM-GCC , vous aurez une “Invite de commandes MinGW” que vous pourrez lancer. Cela charge une fenêtre d’invite de commandes et place le compilateur GCC sur le PATH pour cette fenêtre. (Similaire à “l’invite de commande du développeur” installée avec Visual Studio.)
Je pense que la “dissortingbution MinGW” en a aussi une.
Si vous avez une invite de commande intégrée, vous pouvez simplement:
bootstrap gcc
b2 toolset=gcc
(ou la commande dont vous avez besoin) Si vous travaillez à partir d’exemples où quelqu’un ne définit pas explicitement le jeu d’outils, vous devrez append le toolset=gcc
vous-même. Notez que le toolset
doit être placé dans la position de la propriété et non pas dans l’ option ou la position de la commande . De b2 --help
:
b2 [options] [properties] [install|stage]
Donc, si quelqu’un écrivait la commande pour invoquer la commande install
avec l’option --prefix
, il l’écrirait comme --prefix
:
b2 --prefix=C:\boost-build install
Et vous le réécrivez comme:
b2 --prefix=C:\boost-build toolset=gcc install
Voir b2 --help
pour plus de détails.