I would like to give AMD's open64 compiler a try, but for this I first need to build some boost libraries (current version 1.46_1) using this compiler. Unfortunately, open64 is not among the toolsets provided by the boost.build system, see e.g. here or in more detail here.
Now, how do I get boost to build with open64? Here's what I've tried / figured out so far:
- In the subdirectory
tools/build/v2/tools
there is a bunch of .jam files that seemingly define the toolsets that can then be used via theusing
directive, e.g.using gcc ;
. These look ugly as hell and I don't really know how I would write one for open64 (or openCC, which is the actual command). - Since the interface to openCC is apparently quite similar to that of gcc I tried tricking bjam into using it like this:
- In
tools/build/v2/user-config.jam
I putusing gcc : 4.2.5 : /usr/local/bin/openCC : <cxxflags>"-O3" ;
. - I then built bjam like
./bootstrap.sh --with-toolset=gcc
and./bjam install --prefix=my_dir
- Using the thus built bjam I tried to build the boost libraries with
./bootstrap.sh --with-bjam=my_dir/bin/bjam --prefix=$HOME/my_targe --with-toolset=gcc --with-libraries=regex
and subsequentlymy_dir/bin/bjam
- In
This seems to build "something" alas with names including "gcc-4.2.5" - but, come on, this can't be the real way. Is there any "right" way to do this. Has anyone tried? Are there some toolset definitions for open64 available somewhere? Other suggestions?