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 deux chemins et activer le compilateur GCC.
P.S .: Si je crée un boost avec le compilateur de Microsoft, 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 est dans votre environnement PATH
donc gcc
et g++
peut être appelé à partir de votre invite de commande. Ensuite, allez dans le répertoire racine de votre boost d'où vous avez extrait les fichiers.
Suivez cela avec un bootstrap + b2.exe à construire. Par exemple, disons que vous ne voulez compiler que 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 créer individuellement. Bien sûr, vous pouvez tous les construire avec juste:
b2 toolset=gcc
Consultez Boost Invocation 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
Allez dans le tools\build\v2
répertoire de votre dossier boost. Par exemple, dans mon cas, c'était C:\Boost\boost_1_55_0\tools\build\v2
. Exécutez ensuite
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 actuel)
Maintenant, si vous voulez construire un 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 le --with-filesystem
partie.
Si vous avez installé MinGW/GCC dans le cadre de TDM-GCC , vous aurez une "invite de commande MinGW" que vous pourrez lancer. Cela charge une fenêtre d'invite de commandes et place le compilateur GCC sur le CHEMIN pour cette fenêtre. (Similaire à l '"invite de commande du développeur" installée avec Visual Studio.)
Je pense que la "distribution MinGW" est livré avec un aussi.
Si vous avez une invite de commande intégrée, vous pouvez simplement:
bootstrap gcc
b2 toolset=gcc
(ou peu importe b2
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 ajouter toolset=gcc
toi même. Notez que toolset
doit être placé dans la propriété et non dans l'option ou position de la commande . De b2 --help
:
b2 [options] [properties] [install|stage]
Donc, si quelqu'un écrivait la commande pour appeler la commande install
avec la --prefix
option, ils l'écriraient ainsi:
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.
J'ai pu le construire en suivant les instructions d'Antimony. Cependant, j'ai d'abord 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 plaçant uniquement le dossier MinGW:
set PATH=C:\MinGW\bin
Ensuite, les instructions d'Antimony ont fait le travail pour moi. Merci!!
Juste deux autres petites choses qui pourraient être utiles. BOOST pour MinGW doit être construit à partir du shell Windows, et non à partir 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.