Boost logo

Boost-Build :

From: Florian Adolf (robotik_at_[hidden])
Date: 2008-04-07 15:43:49


Hi Roland,

thanks for your reply. I tried your ideas but no success, sames errors.

To my understanding it has only something to do with the check against
the host OS (here Windows). When cross-compiling with QCC it shouldn't
even go into any ...win32..() methods. For QCC it should set pthread as
the default API.

See my steps in detail below.

Florian

Roland Schwarz wrote:
>> Some hack in the above jam file section (e.g. commenting the if
>> statement) yielded errors:
>
> What do you mean? You commented out the if and got the error?

yes. I commented line 52 in
        boost_1_35_0\libs\thread\build\Jamfile.v2
and got the errors mentioned in my first mail.

> Which error do you get if you do not comment this out?
>

this is the output from calling

bjam -a --without-python --without-mpi --toolset=qcc threadapi=pthread
release threading=multi link=static

************************************************************
Trying to build Boost.Thread with pthread support.
If you need pthread you should specify the paths.
You can specify them in site-config.jam, user-config.jam
or in the environment.
For example:
PTW32_INCLUDE=C:\Program Files\ptw32\Pre-built2\include
PTW32_LIB=C:\Program Files\ptw32\Pre-built2\lib
************************************************************
Skipping build of: libs/thread/build/boost_thread <build>no in common
properties
.../Externals/boost_1_35_0/tools/build/v2/build\virtual-target.jam:415:
in _adjust-name from module object(file-target)@1145
error: <tag>@rulename is present but is not the only <tag> feature

> To me the lower part of the message indicates that you are using an old
> version of boost-build. The error
> error: <tag>@rulename is present but is not the only <tag> feature
> was present with a boost-build from 1.34 tree.
>
I used everything as-is from the sourceforge download and built bjam in
boost_1_35_0\tools\jam\src\.

Then I invoked the call

bjam -a --without-python --without-mpi --toolset=qcc release
threading=multi link=static

> So I suggest to
>
> 1) make sure you are really using boost-build from 1.35 tree
>
> 2) invoke with
> bjam <target-os>qnx threadapi=pthread
>
I added

        "<target-os>qnx" threadapi=pthread

to the above command line.

The I got the same error as with my previous attempt:

notice: could not find main target <target-os>qnx
notice: assuming it's a name of file to create.
************************************************************
Trying to build Boost.Thread with pthread support.
If you need pthread you should specify the paths.
You can specify them in site-config.jam, user-config.jam
or in the environment.
For example:
PTW32_INCLUDE=C:\Program Files\ptw32\Pre-built2\include
PTW32_LIB=C:\Program Files\ptw32\Pre-built2\lib
************************************************************

Skipping build of: libs/thread/build/boost_thread <build>no in common
properties
.../Externals/boost_1_35_0/tools/build/v2/build\virtual-target.jam:415:
in _adjust-name from module object(file-target)@1184
error: <tag>@rulename is present but is not the only <tag> feature
.../Externals/boost_1_35_0/tools/build/v2/build\virtual-target.jam:224:
in abstract-file-target.__init__ from module object(file-target)@1184
.../Externals/boost_1_35_0/tools/build/v2/build\virtual-target.jam:526:
in object(file-target)@1184.__init__ from module object(file-target)@1184
...

> This should compile, although you will get a library with a non-standard
> name: boost_thread_pthread...
>
> But I think this should be a minor issue.
>
> I hope this can be resolved once the cross compile support in
> boost-build is more mature.
>

That would be a great feature. For the time being I need to build own
make files for the libraries where it doesn't work with boost jam/build.


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk