Subject: Re: [Boost-build] --build-type=complete Seems to Build Too Many Files
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2015-04-12 21:50:29
On 04/12/2015 07:34 PM, Merrill Cornish wrote:
> I am running Windows 7 64-bit (fully patched), compiling with
> MinGW-4.9.2 64b-bit and building Boost 1.57.0 using
> \bin\b2.exe --prefix=d:\boost_1_57_0 --build-type=complete
> --without-python --without-mpi
> cxxflags="-std=c++11" -a toolset=gcc stage >d:\bin\build.log 2>&1
> As I understand it, a "complete" build should build eight variations:
> release/debug, static/dynamic, and single thread/multi-thread
You actually get 12 variations. The option
you're missing is runtime-link=static|shared.
(runtime-link=static is incompatible with
link=shared, so there are only 12, not 16)
> However, when I build, I get 16. For example (from in stage/lib):
> libboost_chrono-mgw49-1_57.a 101KB
> libboost_chrono-mgw49-1_57.dll 75KB
> libboost_chrono-mgw49-1_57.dll.a 15KB
> I had thought the .a file extension marked a Unix archive (i.e.,
> non-shared object). In reading through the build log, I first thought
> .a was a Windows object library while .dll was the Windows shared
> library--but then what is .dll.a ?
.dll.a is the import library for the dll.
> For reference, I've included the file sizes of the first three.
> I expected eight. I got sixteen. What are they?
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk