
Sergey Zubkovsky wrote:
The bjam's command line options are : --layout=tagged toolset=msvc The name of the genereated lib file is "boost_date_time-mt-gd.lib". The error doesn't occur if the "--layout" option is "versioned" or "system".
This error is expected when using the 'tagged' layout. autolink requires that you build Boost using 'versioned' layout. The fact that 'system' works is probably due to the fact that you have already build with 'versioned' layout, so have the libraries already.
You can disabled autolinking using BOOST_ALL_NO_LIB macro set to 1.
Does this answer your question?
- Volodya ________________________________________
Thank you, Vladimir, for your answer!
You can disabled autolinking using BOOST_ALL_NO_LIB macro set to 1.
Yes, this hint solves my problem. And, you are right: 'system' is equal to 'tagged' in this context. It was my inattention. But, "expected" sounds some strange -- I simply change the command line option (it's undocumented, unfortunately) and we have really unexpected linker error. Maybe a conditional #pragma warning would be very useful in this case?
Unfortunately, when you build your project the compiler does not know how you have built Boost, so I don't think there's any way to emit warning when you have autolink disabled, but Boost is built with layout!=versioned. Or did you have something else in mind?
PS: Vladimir, can I write to you in Russian? :)
Well, I do understand Russian, but I generally prefer to keep all public discussion on public lists. And, you might get prompter reply here, as quite a number of folks know the answer. - Volodya