Subject: [Boost-build] Boost include path configuration
From: Christian Auby (christian_at_[hidden])
Date: 2009-09-03 10:32:09


I'm trying to compile the lambda example using bjam:

#include <boost/lambda/lambda.hpp>
#include <iostream>
#include <iterator>
#include <algorithm>

int main()
{
     using namespace boost::lambda;
     typedef std::istream_iterator<int> in;

     std::for_each(
         in(std::cin), in(), std::cout << (_1 * 3) << " " );
}

It builds perfectly from within Visual Studio. Boost build has been
configured with "using msvc ;"

The exact same code does not build with the following jamfile:

exe lambda
        : [ glob source/*.cpp ]
        ;

Output:

...found 15 targets...
...updating 3 targets...
compile-c-c++ bin\msvc-9.0express\debug\threading-multi\source\main.obj
main.cpp
source\main.cpp(1) : fatal error C1083: Cannot open include file:
'boost/lambda/lambda.hpp': No such file or directory

     call "C:\Program Files\Microsoft Visual Studio
9.0\VC\vcvarsall.bat" x86 >nul
cl /Zm800 -nologo
@"bin\msvc-9.0express\debug\threading-multi\source\main.obj.rsp"

...failed compile-c-c++
bin\msvc-9.0express\debug\threading-multi\source\main.obj...
...skipped <pbin\msvc-9.0express\debug\threading-multi>lambda.exe for
lack of <pbin\msvc-9.0express\debug\threading-multi>source\main.obj...
...skipped <pbin\msvc-9.0express\debug\threading-multi>lambda.pdb for
lack of <pbin\msvc-9.0express\debug\threading-multi>source\main.obj...
...failed updating 1 target...
...skipped 2 targets...

Is the jamfile missing information? Or was this supposed to work. The
examples from boost do compile from command line and I'm failing to see
what the deciding difference is.

Christian