Visual Studio C++ 11 でBoost(バージョン 1.48. )をビルドする方法は? bootstrap.bat
はツールセットvc11
を見つけることができません。ツールセットvc11をF:\Programming\boost_1_48_0\tools\build\v2\engine\build.bat
に追加しましたが、メッセージが表示されました:
ERROR: Cannot determine the location of the VS Common Tools folder.
EDIT:TheFerruccio答え は、VS 2012 ExpressおよびBoost 1.51.0でも機能します。
次の手順に従って、なんとかビルドできるようにしました。
ツールキットのバージョンを検出できないことに関する多くの警告が生成されますが、とにかく続行されます。
更新:cclibs と呼ばれるGitHubリポジトリを作成しました。これにより、Boostおよびその他のC++ライブラリのビルドがより簡単になります。
この答えは次の場合に美しく機能します:
VS2012
(Visual Studio 2012 Update 2)VS2015
(Visual Studio 2015 Update 2)一言で言えば
All Programs..Microsoft Visual Studio 2012..Visual Studio Tools..x64 Native Tools Command Prompt
。boost_1_53_0.Zip
をC:\boost153
に解凍します。bootstrap.bat
を実行しますbjam.exe
を実行します(オプション)ステップバイステップの説明
All Programs..Microsoft Visual Studio 2012..Visual Studio Tools..x64 Native Tools Command Prompt
。cd c:\boost153
を使用して、boostディレクトリに移動します。bootstrap.bat
を実行します。bjam.exe
を実行します。これにより、すべてのライブラリが構築されます。約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
これは重要です。これらの2つのパスを新しいC++プロジェクトに追加する必要があります。
C:/boost153
をcompiler include path
に追加し、C:\boost153\stage\lib
をlinker library path
に追加します。Properties
を選択し、Configuration Properties..VC++ Directories
を選択します。下のスクリーンショットの太字のテキストの2つの部分を参照してください)。 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;
}
結果:
Hello, world!
Win10 x64
+ VS2015.2
+ Boost v1.6.0
で確認しました。
bootstrap.bat
bjam.exe --toolset = msvc-11
次のコマンドの出力を確認して、インストールが正しいことを確認します。
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
自動リンクに関する彼のフォローアップ記事をお見逃しなく。
上記の回答に加えて、MSVC 10/11/12でブーストバージョンを作成する場合、 BlueGo が非常に役立ちます。異なる構成を選択してビルドを選択するだけで、それがうまくいきます。
vs2012エラー:VS Common Toolsフォルダーの場所を特定できません。
vcvarsall.batは、「C:\ windows\system32 \」にある「reg.exe」を呼び出す必要があります。検索パスにない場合、このエラーが発生します。
C:\ windows\system32を%PATH%に追加すると、問題が解決します。