Subject: Re: [boost] Extremely large Visual Studio libboost_log_setup* binaries
From: Klaim - Joël Lamotte (mjklaim_at_[hidden])
Date: 2013-07-03 16:00:02


I'm using static build only so I can provide some data too.
I compiled yesterday Boost 1.54 (from svn tag) with VS2012 Update 3.
I compiled in both 32 and 64 bit.

Build script:

call bootstrap.bat
call b2 --prefix=. --buid-type=complete toolset=msvc-10.0 architecture=x86
install
call b2 --prefix=. --buid-type=complete --libdir=./lib/x64
toolset=msvc-10.0 architecture=x86 address-model=64 install

32 bit:

libboost_log_setup-vc110-mt-1_54.lib 143,174 kb
libboost_log_setup-vc110-mt-gd-1_54.lib 163,991 kb
libboost_log-vc110-mt-1_54.lib 18,213 kb
libboost_log-vc110-mt-gd-1_54.lib 61,590 kb

64 bit:

libboost_log_setup-vc110-mt-1_54.lib 159,025 kb
libboost_log_setup-vc110-mt-gd-1_54.lib 424,702 kb
libboost_log-vc110-mt-1_54.lib 22,091 kb
libboost_log-vc110-mt-gd-1_54.lib 75,565 kb

However, in the application where I use boost.log, I have only one cpp file
including a boost.log header (it setup the logging system then I provide my
own logging functions to the rest of the system).
That cpp file is part of a dll which is currently under 700kb (with
boost.log statically linked). One other thing to note is that I
define BOOST_LOG_USE_CHAR in that cpp before including log
so it might help.

All in all, I don't see the problem mentionned but because of my use I
suspect that there might be a problem if you try to include some boost log
headers
in all cpp files, it might generate too much code.
However I'm not sure at all of that. Maybe a basic test to check user
binary growth when using only boost.log headers might provide more
information.

Joel Lamotte