Boost logo

Boost Users :

Subject: Re: [Boost-users] linking to boost 1.54 w/ windows and visual studio 2013 RC
From: Jarrett Chisholm (j.chisholm_at_[hidden])
Date: 2013-09-25 10:10:03


Thanks Lars

Yeah, eventually I checked out boost trunk (1.55), compiled, and it all
linked properly in my application. I think I'll just use 1.55 in my
windows version of my app :)

Cheers

Jarrett

On 25/09/13 02:12 AM, Lars Viklund wrote:
> On Tue, Sep 24, 2013 at 01:03:50PM -0400, Jarrett Chisholm wrote:
>> Hi all
>>
>> I'm trying to compile my project as a shared library using scons. I'm
>> using Windows 7, and the Visual Studio 2013 RC. In the project, I'm
>> using boost.
>>
>> The project compiles fine. However, when it tries to link, I get the
>> following:
>> //LINK : fatal error LNK1104: cannot open file
>> 'libboost_log-vc110-mt-1_54.lib'//
>>
>> I'm curious why it's trying to link to `libboost_log-vc110-mt-1_54.lib`
>> instead of `libboost_log-vc120-mt-1_54.lib`, which is what I specified
>> in the link command. Also, as far as I can tell, `vcxxx` is the
>> compiler tag boost uses to tell what version of the compiler built the
>> boost library...so it's almost like `scons` thinks boost was built using
>> Visual Studio 2012, which would be `vc110`...I'm not sure.
> With MSVC, Boost.Config offers "autolink" functionality, which
> determines the toolset name from the perceived compiler version and
> emits #pragma comment(lib,"libboost-blargh.lib") pragmas to make the
> linker automagically link the right library.
>
> The problem lies in that 1.54 doesn't really have any awareness of
> 2013Preview/RC/RTM at all, which means that it'll assume that anything
> over 1700 is "vc110".
>
> There are several solutions to this problem:
> (a) define BOOST_LIB_TOOLSET to "vc120"
> (b) apply the patch from [1] to teach Boost.Config about the compiler
> (c) define BOOST_ALL_NO_LIB to inhibit autolinking
>
> In general, there's a lot of fun little hacks that you need to apply to
> 1.54 and trunk in order to get Boost working much at all with 2013. Some
> of them are in [2], and a few of them are applied to trunk Boost.Build
> and Boost.
>
> [1] https://svn.boost.org/trac/boost/attachment/ticket/8753/0001-Boost.Config-add-Visual-Studio-2013-to-autolink-toolsets.patch
> [2] http://lists.boost.org/Archives/boost/2013/07/204953.php
>


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