11

b2.exeと の両方を使用して、64 ビット アーキテクチャの VS2013 用の Boost を構築しましbjam.exeた。Boostのドキュメントによると、b2を使用する必要がありますbjam。私が気付く違いは次のとおりです。

  1. b2 の .lib ファイルのサイズは、それぞれの bjam ファイルのサイズとは異なります。
  2. bjam を使用すると動的 .lib ライブラリが提供されますが (ここで説明した -s タグなし)、リンク先の .dll ファイルは提供されません (したがって、これからどうすればよいでしょうか? )。一方、b2 を使用すると、静的ライブラリと動的ライブラリの両方が提供されます。 .dll ファイル。しかし、b2 を使用する際の問題は、2 つの動的 .lib ファイルが作成されることです。何故ですか?

また、ビルドオプションを使用して別のビルドディレクトリについても言及しました--build-dirが、このディレクトリの用途は何ですか? これは、.obj、.rsp、およびそれぞれの .dll および .lib ファイルで構成されます。このディレクトリを削除できますか?

Boost のビルドに使用したコマンドは次のとおりです。

  1. b2:

    b2 toolset=msvc-12.0 --build-type=complete architecture=x86 address-model=32 install --build-dir=<build-dir> stage --stagedir=<stage-dir> -j2
    
  2. ジャム:

    bjam stage --stagedir=<stage-dir>
    
4

1 に答える 1