boost-build

How do you build the x64 Boost libraries on Windows?

I've built the x86 Boost libraries many times, but I can't seem to build x64 libraries. I start the "Visual Studio 2005 x64 Cross Tools Command Prompt" and run my usual build: bjam --toolset=msvc --build-type=complete --build-dir=c:\build install But it still produces x86 .lib files (I verified this with dumpbin /headers). What am I d...

How can I work with filenames with spaces in bjam?

I need to describe an external library in a Jamfile. The location of the library is held in an environment variable. set EX_LIB_PATH=C:\Program Files\Ext Here is the snippet from the Jamfile: --snip-- lib extlin : : <file>$(EXT_LIB_PATH)/lib/library.lib ; --spin-- bjam croaks saying that "C:\Program" cannot be found. What can b...

Problem with linking against libexpat in Boost Build - for building graphml

On my system, expat is located at /usr/include/expat.h /usr/include/expat_external.h /usr/lib/libexpat.1.5.0.dylib /usr/lib/libexpat.1.dylib /usr/lib/libexpat.dylib /usr/lib/libexpat.la So I export the required variables for boost to build graphml export EXPAT_INCLUDE=/usr/include export EXPAT_LIBPATH=/usr/lib then I run (where ...

Is there any way to prevent Boost.Build from recursively scanning header files for #include directives?

Is there a way to limit the header files that Boost.Build recursively scans for #include directives to a particular directory or set of directories? I.e. I'd like it to recursively scan the header files within my project only. I know that they external dependencies are not going to change (and being Boost and Qt they're pretty big). I en...

Building basic Boost applications with bjam

I can find tons of general purpose documentation on Boost.Build, but surprisingly nothing on how to use it to build simple Boost applications. I compiled Boost for mingw with bjam, got all the libraries and includes in C:\Boost. Now what would a basic Jamroot file look like to use all this ? The libs all have complicated names like 'li...

how do delete test generated temp files in with boost build(bjam)

I am new to boost build. I have test suite that is built with boost bjam(jamfiles). The test generates a lot of temporary files. I want to specify a rule that when the test is built OR when bjam clean is called it also removes my generated test data, ready for a new run. This is trivial in make, but I cant find any references of how to ...

boost build site-config.jam on gentoo

I am using boost build in my project and now i want to use boost date_time. I've googled and found that it should (probably) be used this way: exe test : test.cpp /boost/date_time//date_time ; but then i get this message: error: Unable to find file or target named error: '/boost/date_time//date_time' error: referred from project ...

Boost.Build conditional library compilation per-project

I have C++ project that are built using Boost.Build. The project consists of 3 subprojects. . [root] \-- source \-- common \-- config \-- config.cpp \-- project_1 \-- Jamfile.jam \-- project_2 \-- Jamfile.jam \-- project_3 \-- Jamfil...

simple install using bjam

I'm a boost.build newby and while bjam is quite easy to use for most compiling tasks and I didn't figured out how to do something that should be really simple : installing my application in the system. Say I have a very simple project with two files in tree (besides Jamroot). hello.cpp : a C++ program say it prints the content of /etc...

Debugging with Code Blocks and a custom make (Boost.Build)

I've been using Code::Blocks with MinGW on a WinXP box for a while now. But since I started using Boost.Build as "custom build tool" I'm having trouble setting break points from Code::Blocks. When I start a debugging session Code::Blocks tries to send all break points to GDB but GDB doesn't seem to recognise the sources' filenames: Debu...

change command used by bjam when installing C++ boost library

Hi, I am trying to make the installation of boost library a little bit slower. So I add this in /etc/site-config.jam using gcc ; ; "sleep 10; g++" ; However, it gives this error: $ ./bjam install \/etc/site-config.jam:5: syntax error at keyword ; /etc/site-config.jam:5: in load rule sleep 10; g++ unknown in module pch. /t...

Building and using shared libraries with bjam

Hello! Using bjam on ubuntu, I am building a c++ shared library and trying to use it in an executable. I have to build as shared since it wont link as static (lots of undefined references arise). Thats fine. Two related problems: 1) Using a heirarchy of Jamfiles, my exe project (testServerHub) has a dependency on the shared library (p...

Boost::Python: Passing custom arguments to gcc when building python-extension

I need to pass -Wl,-rpath,\$$ORIGIN/lib/ to g++'s linker (reason). Is there a way to pass this argument in Jamroot file? ...

Linking to boost_filesystem in a bjam-based project

I'm trying to set up Boost.Build for my own project, which references libboost_filesystem. When I run bjam release avg_asp I get the following output: andreas@rodin:~/src/libdoas/src/tools$ bjam release avg_asp -n /home/andreas/lib/build/boost_1_42_0/Jamroot:637: in modules.load rule targets.create-metatarget unknown in module Jamfi...

Compiling boost on Sunos

I have just started with using boost libraries. For one of our projects i want to compile Boost 1.39.0 on Sun OS using sun compiler. However if i compile it using steps mentioned in http://www.boost.org/doc/libs/1_39_0/more/getting_started/unix-variants.html, not all of the targets are compiled. Can someone provide resources which would ...

how to create a new variant in bjam

I've tried reading the documentation but it is rather impenetrable so I'm hoping someone may have a simple answer. I want to define a new 'variant', based on 'debug', which just adds some macro definitions to the compiler command line, eg "-DSOMEMACRO". I think I may be able to do this as a "sub-variant" of debug, or else just define a ...

How can I decode the boost library naming?

I tried to find out that gd means in boost library name and I only found two other people looking for the same thing. I suppose it should be a place where this is clearly documented and I would like to find it. mt - multitheaded, get it with bjam threading=multi s - bjam runtime-link=static g - using debug versions of the standard and...

How to write rule for ICU genrb and pkgdata for boost-build?

jamroot.jam rule genrb ( sources + : requirements * ) # create *.res files in binary directory { local result ; for local r in $(sources) { res $(r:B) : $(r) ; } } res.jam type.register RES : res ; type.register TXT : txt ; generators.register-standard res.resource : TXT : RES ; actions resource { $(icu_home)\b...

Is it possible to do an out-of-source build with bjam?

Due to quota restrictions I really need to build a project that I'm working on with all of the temporary files and build products in a separate directory (in my case /tmp/somewhere). I'm used to doing this with CMake, is it possible with bjam, if so, how? ...

bjam glob 'exclude pattern' question

According to the docs, bjam's glob operator accepts a 2nd argument which specifies a pattern to exclude, like so: [ glob pattern : exclude ] However bjam gives me an error complaining about the 2nd argument. It may be that my bjam version is too old. Would anyone know at what version this 'exclude' feature was added? I'm using 3.1....