Boost logo

Boost Interest :

Subject: Re: [Boost-cmake] test library .lib name in Windows
From: Doug Gregor (doug.gregor_at_[hidden])
Date: 2009-05-18 10:47:59


On Sat, Mar 21, 2009 at 1:22 PM, Daniel Nelson <torham_at_[hidden]> wrote:
> I built Boost 1.38 with CMake and I'm using CMake to build my programs in
> Windows using MSVC and auto linking but I'm getting errors like:
>
> LINK : fatal error LNK1104: cannot open file 'libboost_unit_test_framework-
> vc90-mt-sgd-1_38.lib'
>
> Instead I have a library named libboost_unit_test_framework-vc90-mt-sgd-1_38-
> s.lib.  While looking through BoostCore.cmake I found this comment:
>
> #   STATIC_TAG: States that the name of static library variants on
> #   Unix need to be named differently from shared library
> #   variants. This particular option should only be used in rare cases
> #   where the static and shared library variants are incompatible,
> #   such that linking against the shared library rather than the
> #   static library will cause features. When this option is provided,
> #   static libraries on Unix variants will have "-s" appended to their
> #   names. Note: we hope that this is a temporary solution. At
> #   present, it is only used by the Test library.
>
> And a ways below is the place where the -s is appended.  It seems like the -s
> should only be appended in Unix in order to avoid breaking the auto linking in
> Windows.

FWIW, this has been fixed.

  - Doug


Boost-cmake list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk