27 votes

Booster la compilation avec MSVC 11 (VS 2012)

Comment construire Boost (j'ai essayé la version 1.48.0) avec Visual Studio C++ 11? bootstrap.bat ne trouvez pas d'outils vc11. J'ai ajouté des outils vc11 d' F:\Programming\boost_1_48_0\tools\build\v2\engine\build.bat mais j'ai reçu un message:

ERROR: Cannot determine the location of the VS Common Tools folder.

EDIT: Le Ferruccio réponse œuvres pour VS 2012 Express et de Stimuler 1.51.0 trop.

39voto

Contango Points 7976

Cette réponse fonctionne à merveille pour:

  • Visual Studio 2012 Update 2 (VS2012)
  • Windows 7 x64
  • Boost v1.53

En un mot

  1. Ouvrir Visual Studio 2012 invite de commande. À partir du menu démarrer son: All Programs..Microsoft Visual Studio 2012..Visual Studio Tools..x64 Native Tools Command Prompt.
  2. Décompressez boost_1_53_0.zip de C:\boost153.
  3. exécutez bootstrap.bat
  4. exécutez bjam.exe
  5. Dans tout nouveau projet C++, inclure le chemin d'accès aux bibliothèques Boost, que par la capture d'écran ci-dessous.

(facultatif) Étape par Étape les Instructions

  1. Installation De Visual Studio 2012.
  2. Installez La Mise À Jour 2.
  3. Télécharger coup de pouce de SourceForge.
  4. Décompressez dans "C:\boost153"
  5. Ouvrez une invite de Commande Visual Studio avec des privilèges d'Administrateur. À partir du menu démarrer, ses All Programs..Microsoft Visual Studio 2012..Visual Studio Tools..x64 Native Tools Command Prompt.
  6. Changement pour le coup de pouce répertoire cd c:\boost153.
  7. Exécutez bootstrap.bat.
  8. Exécutez bjam.exe. Cela s'appuie toutes les bibliothèques.
  9. Il peut y avoir des avertissements, mais vous pouvez ignorer ces.
  10. Quand il a fini de compiler après environ 5 minutes, il indique:

    The Boost C++ Libraries were successfully built!
    The following directory should be added to compiler include paths:
       C:/boost153
    The following directory should be added to linker library paths:
       C:\boost153\stage\lib
    
  11. C'est important, nous aurons besoin d'ajouter ces deux chemins pour tout nouveau projet C++.

  12. Créer un nouveau projet C++.
  13. Comme l'a noté quelques marches il y, ajoutez - C:/boost153 de la compiler include path et C:\boost153\stage\lib de la linker library path.
  14. Clic droit sur le projet, sélectionnez Properties, sélectionnez Configuration Properties..VC++ Directories. Voir les deux portions de texte en gras dans la capture d'écran ci-dessous): enter image description here
  15. Nous allons lancer un programme simple qui montre la puissance de l'amplification, par l'ajout de support pour foreach boucles:

    // Source code below copied from:   
    // http://www.boost.org/doc/libs/1_53_0/doc/html/foreach.html
    #include "stdafx.h"
    
    #include <string>
    #include <iostream>
    #include <conio.h> // Supports _getch()
    #include <boost/foreach.hpp>
    
    int main()
    {
        std::string hello( "Hello, world!" );
    
        BOOST_FOREACH( char ch, hello )
        {
            std::cout << ch;
        }
    
        _getch();
        return 0;
    }
    
  16. Résultat:

    Hello, world!
    

Plus De Réponses

32voto

Ferruccio Points 51508

J'ai réussi à me construire en suivant ces étapes:

  1. Ouvrez une invite de commande Visual Studio. À partir du menu démarrer, c'est: Tous les Programmes|Microsoft Visual Studio 11|Native x64 Invite de Commande.
  2. Décompressez boost_1_48_0.zip et définir le répertoire de travail pour boost_1_48_0
  3. exécutez le fichier d'amorçage.chauve-souris
  4. exécuter bjam.exe

Il génère beaucoup de mises en garde au sujet de ne pas être en mesure de détecter la version de kit, mais il procède de toute façon.

Mise à jour: j'ai créé dépôt GitHub appelé cclibs qui le rend plus simple à construire le coup de pouce et quelques autres bibliothèques C++.

8voto

Gank Points 324

bootstrap.bat

bjam.exe --toolset = msvc-11

5voto

GhostlyGhost Points 51

Vérifiez que votre installation est correcte en confirmant la sortie de la commande suivante:

 C:\>echo %VS110COMNTOOLS%
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\
 

Voici quelques instructions simples à suivre pour se débarrasser des avertissements lors du démarrage: http://landoftheninja.blogspot.com/2011/11/visual-c-11-and-boost.html

Ne manquez pas son article de suivi qui traite de la liaison automatique.

0voto

user610827 Points 11

vs2012 ERREUR: impossible de déterminer l'emplacement du dossier VS Common Tools.

vcvarsall.bat doit appeler un "reg.exe" qui dans "C: \ windows \ system32 \". s'il n'est pas dans le chemin de recherche, provoquera cette erreur.

Ajouter C: \ windows \ system32 à% PATH% résoudra le problème.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X