28

Visual Studio C ++ 11でBoost(バージョン1.48.0を試しました)をビルドする方法は?ツールセットが見つかりません。ツールセットvc11をに追加しましたが、メッセージが表示されました。bootstrap.batvc11F:\Programming\boost_1_48_0\tools\build\v2\engine\build.bat

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

編集: Ferruccio回答はVS2012ExpressとBoost1.51.0でも機能します。

4

6 に答える 6

39

この答えは次の場合にうまく機能します。

  • VS2012(Visual Studio 2012 Update 2)
    • またはVS2015(Visual Studio 2015 Update 2)
  • Windows 7 x64
    • またはWindows10x64
  • Boost v1.53
    • またはBoostv1.60

一言で言えば

  1. VisualStudio2012コマンドプロンプトを開きます。スタートメニューから:All Programs..Microsoft Visual Studio 2012..Visual Studio Tools..x64 Native Tools Command Prompt
  2. に解凍boost_1_53_0.zipC:\boost153ます。
  3. 走るbootstrap.bat
  4. 走るbjam.exe
  5. 新しいC++プロジェクトでは、以下のスクリーンショットのように、Boostライブラリへのパスを含めます。

(オプション)ステップバイステップの説明

  1. VisualStudio2012をインストールします。
  2. Update2をインストールします。
  3. SourcesからBoostをダウンロードします。
  4. 「C:\boost153」に解凍します
  5. 管理者権限でVisualStudioコマンドプロンプトを開きます。スタートメニューから、そのAll Programs..Microsoft Visual Studio 2012..Visual Studio Tools..x64 Native Tools Command Prompt
  6. を使用してブーストディレクトリに移動しcd c:\boost153ます。
  7. を実行しますbootstrap.bat
  8. を実行しますbjam.exe。これにより、すべてのライブラリが構築されます。
  9. 警告があるかもしれませんが、無視してかまいません。
  10. 約5分後にコンパイルが完了すると、次のように表示されます。

    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++プロジェクトにこれら2つのパスを追加する必要があります。

  12. 新しいC++プロジェクトを作成します。
  13. 数ステップ前に述べたように、とをに追加C:/boost153します。compiler include pathC:\boost153\stage\liblinker library path
  14. プロジェクトを右クリックし、を選択しProperties、を選択しますConfiguration Properties..VC++ Directories。下のスクリーンショットの太字のテキストの2つの部分を参照してください): ここに画像の説明を入力してください
  15. foreachループのサポートを追加して、ブーストの力を示す簡単なプログラムを実行してみましょう。

    // 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. 結果:

    Hello, world!
    

その他の回答

2016年5月5日更新

Win10 x64++でチェックVS2015.2Boost v1.6.0

于 2013-05-28T13:33:15.760 に答える
32

次の手順に従って、ビルドすることができました。

  1. VisualStudioのコマンドプロンプトを開きます。スタートメニューからは、すべてのプログラム| Microsoft Visual Studio 11 |Nativex64コマンドプロンプトです。
  2. boost_1_48_0.zipを解凍し、作業ディレクトリをboost_1_48_0に設定します
  3. bootstrap.batを実行します
  4. bjam.exeを実行します

ツールキットのバージョンを検出できないことについて多くの警告が生成されますが、とにかく続行します。

更新:私はcclibsと呼ばれるGitHubリポジトリを作成しました。これにより、Boostやその他のC++ライブラリの構築が簡単になります。

于 2011-11-21T23:44:44.923 に答える
8

bootstrap.bat

bjam.exe --toolset = msvc-11

于 2013-12-01T03:29:44.240 に答える
5

次のコマンドの出力を確認して、インストールが正しいことを確認します。

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

ブートストラップ時に警告を取り除くために従うべきいくつかの簡単な手順は次のとおりです。http://landoftheninja.blogspot.com/2011/11/visual-c-11-and-boost.html

自動リンクを扱った彼のフォローアップ投稿をお見逃しなく。

于 2012-03-03T03:39:17.593 に答える
0

vs2012エラー:VSCommonToolsフォルダーの場所を特定できません。

vcvarsall.batは、「C:\ windows \system32\」にある「reg.exe」を呼び出す必要があります。検索パスにない場合、このエラーが発生します。

C:\ windows \ system32を%PATH%に追加すると、問題が解決します。

于 2013-07-14T11:40:04.683 に答える
0

上記の回答に加えて、BlueGoはMSVC10/11/ 12でブーストバージョンを構築するのに非常に役立ちます。さまざまな構成を選択してビルドを選択するだけで、うまくいきます。

于 2014-08-05T13:28:15.293 に答える