Hope this isn't too stoopid of a question...

I just started using boost.build on win32 (coming from Linux) and I've encountered something unexpected.

It appears that cygwin installs the boost headers in a directory called "/usr/include/boost-VERSION/" (presently, "/usr/include/boost-1_33_1/" for me).

On Linux (FC6), the boost headers are installed in "/usr/include/boost/".  (No, it's not a symlink.)

So, of course, includes like

    #define <boost/shared_ptr.h>

in my source cannot be found.

I have temporarily fixed the problem in user-config.jam by adding:


This seems fairly nasty to me though, because now everyone on the project has to know and/or remember to update user-config.jam whenever boost is updated.

Is there a better way to handle this situation (in boost.build)?


In a world without walls and fences, who needs windows and gates?