Boost logo

Boost Interest :

Subject: [Boost-cmake] test library .lib name in Windows
From: Daniel Nelson (torham_at_[hidden])
Date: 2009-03-21 16:22:27


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.

--
Daniel

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