Boost logo

Boost-Build :

Subject: [Boost-build] Having problem with building with 1.42
From: Avi Bahra (avibahra_at_[hidden])
Date: 2010-02-16 09:34:41


 I am using bjam to build my application on suse linux. I have defined a
environment variable BOOST_ROOT, which allows me to switch between
boost builds. I have used this approach for 1.38, 1.39,1.40.
I always build the boost libraries I need myself using bjam.
   bjam --build-dir=./tmpBuildDir toolset=gcc stage link=static
--with-system
i.e I don't bother with build scripts in $BOOST_ROOT

With 1.42 when I build my application I get an error of the form:

error: Unable to find file or target named
error: '/var/tmp/ma0/boost/boost_1_
42_0/stage/lib/libboost_system.a'
error: referred from project at
error: ''

The error is very misleading because the file exists?
When I switch back, to 1.39/1.40 there are no problems.

This is what my boost-build.jam look like:
--------------------------------------------------------------------------------
BOOST_BUILD = [ MATCH --boost-build=(.*) : $(ARGV) ] ;
BOOST_BUILD ?= $(BOOST_ROOT)/tools/build/v2 ;
boost-build $(BOOST_BUILD) ;

Here is jam file for my leaf project:
----------------------------------------------------------------------------

exe test : [ glob src/*.cpp ]
          /site-config//boost_system
          /site-config//boost_serialization
         : <include>../SCRATCH/src
           <variant>debug:<define>DEBUG
        ;
--------------------------------------------------------------------------

Notice that I reference /site-config// to reference the boost libs.
for some reason in 1.42 this fails !

My site-config.file which is located in $BOOST_ROOT/tools/build/v2
is of the form:
------------------------------------------------------------------------
import os ;
local BOOST_ROOT = [ os.environ BOOST_ROOT ] ;

lib boost_serialization : :
<file>$(BOOST_ROOT)/stage/lib/libboost_serialization.a ;
lib boost_system : : <file>$(BOOST_ROOT)/stage/lib/libboost_system.a ;

project site-config
   : requirements <include>$(BOOST_ROOT)
   ;
using gcc ;
using testing ;
--------------------------------------------------------------------

My site-config.jam is the same between 1.40 and 1.42. There is
probably a silly mistake on my part somewhere, but its preventing me
from moving to 1.42.

Any help appreciated.

 Best regards,
Ta,
  Avi



Boost-Build 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