
Oliver Kullmann wrote:
Hello,
I want to build version 1_38_0, but I can't progress due to missing build-documentation. I need to use bjam (due to special demands on the build), and my platform is Linux.
Apparently besides this little bit of information at http://www.boost.org/doc/libs/1_38_0/more/getting_started/unix-variants.html there is nothing available? (Even to get there is not obvious --- you need to click on "microsoft install" first, in order to find a further link to Linux/Unix install?)
So well, I invoke "bjam --help":
Usage says
bjam [options] [properties] [install|stage]
where under "properties" we find
Properties:
toolset=toolset Indicates the toolset to build with.
variant=debug|release Select the build variant
link=static|shared Whether to build static or shared libraries
threading=single|multi Whether to build single or multithreaded binaries
runtime-link=static|shared Whether to link to static or shared C and C++ runtime.
What's the syntax here??
"--toolset=gcc", as one finds it on that webpage above, or "toolset=gcc", as that information seems to suggest (since for the options the "--" is mentioned)??
Both work. I hope that getting started will be fixed to use toolset=xxx
Unfortunately, it seems that, different from all other build systems I'm aware of, bjam doesn't print out a summary of what it will be doing. I tried many variations of syntax, but apparently it never worked out.
No build system I know produces summary of that it *will* be doing. Some build systems echo the commands before executing them, but definitely not all -- for example, CMake does not print complete commands either. You can make Boost.Build to print commands using -d2 option.
There is an option which is potentially relevant, "--build-type", but again I don't know what are the possible parameters for that --- since there are no examples, I don't know how to read the cryptic listing (syntax-wise).
What I need to achieve is simple:
1) I need to specify a locally installed gcc toolset: Past installations suggested to use the options
--toolset=gcc-4.1.2 --toolset-root=PATH-TO-LOCAL-INSTALLATION --"-sGCC_ROOT_DIRECTORY=PATH-TO-LOCAL-INSTALLATION"
I can't find any information on that topic.
See: http://www.boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html
3) No python; this seems also unproblematic (but apparently it vanished from the documentation?)
--without-python
It is present in "--help" output.
5) No multi-threading: Don't know how to achieve this: Somehow "threading=single" seems to be needed here, but I don't know how to specify it (whatever I do, I always end up with libraries with the "mt"-ending).
The syntax is documented at: http://www.boost.org/boost-build2/doc/html/bbv2/advanced/invocation.html What did you try exactly? - Volodya