Boost Testing :
Subject: Re: [Boost-testing] Possible misconfiguration for test runner Debian-Sid.
From: Jurko GospodnetiÄ (jurko.gospodnetic_at_[hidden])
Date: 2012-06-14 06:58:59
>> The first thing is that the tests seem to be run using an outdated
>> bjam executable. Could someone administering this test runner check
>> this out and make sure it is configured with bjam built from the
>> latest trunk sources? Just go to the tools/build/v2/engine folder,
>> run the build.sh script there and the executables should get created
>> in some tools/build/v2/engine/bin* folder.
> Indeed, tools_bjam/bin.linuxx86_64/bjam is properly built.
> However, there is also an installed version of bjam and
> /usr/share/boost-build stuff (from Boost 1.49). My guess is that
> either the run.py script invokes "bjam" and picks up /usr/bin/bjam
> from the PATH; or that tools_bjam/bin.linuxx86_64/bjam somehow finds
> and uses /usr/share/boost-build.
Yup, it seems you are using the latest bjam executable but are
testing old sources. That would explain the error message.
From looking at run.py & regression.py it should be using bjam.exe
from the regression system folder (where run.py is located). run.py
should create some sort of a log file. In it you should see a line like
"Using bjam binary in '%s'" which should tell you exactly which bjam
executable is being used.
> I will temporarily remove the installed bjam (and boost-build) and
> re-run the test builds to see if the problem goes away.
As to which Boost library is being tested - it should be the one in
the boost folder under the regression system folder (where run.py is
located). Internal Boost Build test script gets run from the
boost/tools/build/v2/test folder. It then deletes any BOOST_BUILD_PATH
environment variable settings - so that should have no effect.
It should use the build system whose location is specified by some
boost-build.jam file - and that is exactly what the failing test is
messing with so that might be the root cause.
I think the failing test expects to be run in a folder that does not
have a boost-build.jam file in any of its parent folders (it first tests
whether Boost Build correctly reports if it can not find that file) and
that you have such a boost-build.jam file set up somewhere along that
path and that file points to the /usr/share/boost-build installation.
Could you check whether this is so? If it is then simply removing
this boost-build.jam file should make the test pass. You can also
restore the temporarily the removed bjam executable and
/usr/share/boost-build installation as that should then have no effect.
On this side, I'll update the test to check for this misconfiguration
explicitly and report it more cleanly, including where it found the
problematic boost-build.jam file.
Thanks for the help!