Boost logo

Boost-Build :

From: Bronek Kozicki (brok_at_[hidden])
Date: 2003-12-18 10:59:47

On Thu, 18 Dec 2003 11:16:04 -0000, John Maddock wrote:

>> I've just finished building boost from current CVS. Command line used:
>> $ bjam "-sTOOLS=mingw" "-sBUILD=debug release
>> <runtime-link>static/dynamic <threading>multi/single"
> Which will build four library versions:
> static runtime single threaded
> static runtime multi threaded
> dynamic runtime single threaded
> dynamic runtime multi threaded

... each release and debug version. Thus expected number of .lib files
is 8. The problem is that this command created 12 .lib files. Of these,
4 library files are dynamic libraries (which was expected) and 8 files
are static libraries (which wasn't).

> I would expect both to be different in most cases.

fc /b reports that these object files are identical, see bellow:

[cut]\debug>for %i in (*.obj) do fc /b %i runtime-link-static\%i

[cut]\debug>fc /b connection.obj runtime-link-static\connection.obj
Comparing files connection.obj and RUNTIME-LINK-STATIC\CONNECTION.OBJ
FC: no differences encountered

[cut]\debug>fc /b signal_base.obj runtime-link-static\signal_base.obj
Comparing files signal_base.obj and RUNTIME-LINK-STATIC\SIGNAL_BASE.OBJ
FC: no differences encountered

[cut]\debug>fc /b slot.obj runtime-link-static\slot.obj
Comparing files slot.obj and RUNTIME-LINK-STATIC\SLOT.OBJ
FC: no differences encountered

[cut]\debug>fc /b trackable.obj runtime-link-static\trackable.obj
Comparing files trackable.obj and RUNTIME-LINK-STATIC\TRACKABLE.OBJ
FC: no differences encountered

> See more/getting_started.html for a description of the lib naming
> convention.

I have seen it. And I still do not understand why I have every static
library twice. See:

[cut]\libboost_signals.lib\mingw\debug>dir /a:-d *.lib /s | find "2003-"
2003-12-18 08:09 2 211 284 libboost_signals-mgw-d-1_31.lib
2003-12-18 08:08 2 211 284 libboost_signals-mgw-sd-1_31.lib
2003-12-18 08:08 2 219 086 libboost_signals-mgw-mt-sd-1_31.lib
2003-12-18 08:09 2 219 086 libboost_signals-mgw-mt-d-1_31.lib

IIUC there shouldn't be such file as "libboost_signals-mgw-d-1_31.lib"
or "libboost_signals-mgw-mt-d-1_31.lib" . Prefix "lib" means that these
files are static liraries, thus each should have "-s" flag set.

Kind regards


PS. I hope my English is not that bad.


Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at