Boost logo

Boost Users :

Subject: Re: [Boost-users] [Boost 1.39] different naming?
From: Vladimir Prus (vladimir_at_[hidden])
Date: 2009-05-05 01:08:55


Christoph wrote:

> I built Boost 1.38 (and earlier) with the following options
> --buildid=xxxx --layout=system
>
> This resulted in libs named
> libboost_regex-mt-xxxx.so
>
>
> With Boost 1.39 the libs (they *are* built with multi-threading support) are
> named 'only'
> libboost_regex-xxxx.so
> (note the missing "-mt")
>
> When linking against Boost libs I have written -lboost_regex-mt-xxxx in my
> code. Was that a bad idea (I mean the including -mt part)?
>
> I can fix this by passing --buildid=mt-xxxx to get the old names, but I am
> curious if that change was done on purpose.
> (I would like to avoid having to change Boost libs' names in my makefiles
> with every second Boost release or so ;-)
>
>
> So, to make the questions clear:
> 1) why was the change made?

Because --layout=system is for system integrators. If you check your /usr/lib,
you'll see no other library but Boost uses -mt suffix (Qt used to, years ago,
but no longer).

> 2) is linking against sth like -lboost_regex-mt a bad idea? If so, why?

It's bad idea only because such lib does not exist.

> 3) will the new naming remain?

Yes. It's planned to add one or two additional values of --layout option,
one of them matching the previous behaviour of 'system'.

- Volodya


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net