|
Boost Testing : |
From: Joaquin M Lopez Munoz (joaquin_at_[hidden])
Date: 2005-09-06 07:19:28
John Maddock <john <at> johnmaddock.co.uk> writes:
>
> What's happened to the RudbekAssociates test results, they're all failing
> for vc-6_5 vc-6_5-stlport vc-7_0 and vc-7_1 whenever there is an external
> lib to link against. The typical error message is:
> LINK : fatal error LNK1104: cannot open file
> 'libboost_regex-vc71-mt-gd-1_33_1.lib'
>
> Which usually happens when there is a conflict between the auto-linking code
> and the lib names produced by bjam (if that's the case there's a regression
> in the build system somewhere).
>
> Anyone any ideas? What are the actual linker command lines produced inside
> the response files?
>
the version tag is constructed in lines 2689-2692 of
tools/build/v1/boost-base.jam
local version-number = [ get-values <version> : $(properties) ] ;
version-number ?= $(BOOST_VERSION) ;
version-tag = [ MATCH "^([^.]+)[.]([^.]+)" : $(version-number[1]) ] ;
version-tag = $(version-tag:J="_") ;
As you can see, the sub-minor (aka patch) version number
is not included, as explicitly stated in the "getting started"
page (quote):
"Boost Version
This is the short label for the version of the Boost Libraries.
The major and minor version numbers are taken together separated
by an underscore. For example version 1.31.0 would be tagged as
"-1_31". The patch version number is not included because it is
assumed that patch versions are upward compatible."
So, my understanding is that it is autolinking that wrongly
includes the patch number and that BOOST_LIB_VERSION in
boost/version.hpp should be defined as "1_33" instead of its
current value "1_33_1".
Hope this helps,
JoaquÃn M López Muñoz
Telefónica, Investigación y Desarrollo