Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2007-08-08 04:16:04


Preston A. Elder wrote:

> For completeness, here is my Jamroot:
>
> import os ;
>
> path-constant MANTRA_ROOT : . ;
> local BOOST_ROOT = [ os.environ BOOST_ROOT ] ;
> local TINYXML_ROOT = [ os.environ TINYXML_ROOT ] ;

This defines BOOST_ROOT variable in Jamroot.

> Here is my Jamfile:
>
> lib uuid ;
> lib tinyxml : : <name>tinyxml <search>$(TINYXML_ROOT) ;
> lib boost_filesystem : : <name>boost_filesystem-gcc41-mt <search>
> $(BOOST_ROOT)/stage/lib ;
> lib boost_system : : <name>boost_system-gcc41-mt <search>$(BOOST_ROOT)/
> stage/lib ;

This tries to make use of BOOST_ROOT variable, in Jamfile. However, nothing
in the code you posted sets BOOST_ROOT variable *in Jamfile* to any value.

The value of BOOST_ROOT in Jamroot -- which is a completely different file --
is independent.

I'd suggest

        path-constant BOOST_ROOT : [ os.environ BOOST_ROOT ] ;

in your Jamroot.

> By rights it SHOULD generate -L arguments, but the g++ link argument has
> no -L flags in it at all. The -l arguments are all there, but no -L
> arguments. I set BOOST_ROOT to $HOME/src/boost and TINYXML_ROOT to $HOME/
> src/tinyxml, which gets imported above, and since the compiles work I
> know that is fine.

Either headers from standard location are picked, or you did not include something.
Can you please post a complete example as archive?

- Volodya


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