I built Boost for VS2013, 64-bit architecture using both b2.exe
and bjam.exe
. According to Boost documentation, b2
must be used over bjam
. The differences I notice are:
- The size of .lib files from b2 differs from that of the respective bjam file.
- Using bjam provides dynamic .lib libraries (without -s tag as mentioned here), but it doesn't provide the .dll files to link to (so what to do now?), whereas using b2 gives both static and dynamic libraries along with the .dll files. But the problem using b2 is, it gives two dynamic .lib files - one starts with boost_xxxx.lib and other with libboost_xxxx.lib and both are of different sizes. Why is that?
Also I mentioned different build directory using the build option --build-dir
, but what is the use of this directory? It consists of .obj, .rsp along with respective .dll and .lib files. Can this directory be deleted?
Here are the commands I used to build Boost:
b2:
b2 toolset=msvc-12.0 --build-type=complete architecture=x86 address-model=32 install --build-dir=<build-dir> stage --stagedir=<stage-dir> -j2
bjam:
bjam stage --stagedir=<stage-dir>