Boost logo

Boost :

From: Alkis Evlogimenos (alkis_at_[hidden])
Date: 2002-10-16 01:49:50


On Tuesday 15 October 2002 03:11 pm, David Abrahams wrote:
> Yes, it does. That's what -static in the g++ command-line means. You
> can inspect the build command lines by passing
>
> -n -a
>
> to bjam when you invoke it. Inspecting the differences will tell you a
> lot.

After some recompilations and google digging through the net let me try and
see if I got this right:

shared-linkable-true: creates targets that can be linked in a shared object
(all it says is that the code generated is position independent; if that goes
to a static/shared library or a statically/dynamically linked executable is
another story) (passes -fPIC to gcc)

runtime-link-dynamic: creates targets that are dynamically linked to the C++
runtime (no additional options for gcc)

runtime-link-static: creates targets that are statically linked to the C++
runtime (passes -static to gcc)

If the above is correct then shouldn't runtime-link-dynamic and
runtime-link-static be passing to gcc "-shared-libgcc" and "-static-libgcc"
respectively? gcc's manual says that "-static" turns on preference to static
libraries in general whereas "-{static,dynamic}-libgcc" only affects libgcc
(isn't this the C++ Runtime?).

Anyway, when building boost I can't seem to be able to get shared libraries
for anything other than boost_regex and boost_signals. Is it a bad idea to
link dynamically to boost_thread and boost_date_time libraries? Or there is
nothing wrong with it and all I have to do is add a dll rule for each of
them?

Thanks,

-- 
Alkis

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk