Opened 9 years ago

Closed 9 years ago

Last modified 8 years ago

#8812 closed Bugs (fixed)

Output of "bcp build filesystem <output>" doesn't build

Reported by: Bruce Stephens <bruce.r.stephens@…> Owned by: John Maddock
Milestone: To Be Determined Component: Building Boost
Version: Boost 1.54.0 Severity: Problem
Keywords: Cc: robnapier@…, shane.turner@…

Description

In previous versions this worked fine. In 1.54.0 (and subversion HEAD) it does not. ./b2 builds fine but then does not run:

bruce% ./b2                                                                                /auto/tmpfs

Building the Boost C++ Libraries.


/auto/tmpfs/tools/build/v2/build/targets.jam:397: in find-really
*** argument error
* rule project.is-registered-id ( id )
* called with: (  )
* missing argument id
/auto/tmpfs/tools/build/v2/build/project.jam:600:see definition of rule 'project.is-registered-id' being called
/auto/tmpfs/tools/build/v2/build/targets.jam:457: in class@project-target.find
/auto/tmpfs/tools/build/v2/build/targets.jam:841: in resolve-reference
/auto/tmpfs/tools/build/v2/build/targets.jam:858: in targets.generate-from-reference
/auto/tmpfs/tools/build/v2/build/targets.jam:1245: in generate-dependencies
/auto/tmpfs/tools/build/v2/build/targets.jam:1302: in class@basic-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:757: in generate-really
/auto/tmpfs/tools/build/v2/build/targets.jam:729: in class@main-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:272: in class@project-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:874: in targets.generate-from-reference
/auto/tmpfs/tools/build/v2/build/targets.jam:1245: in generate-dependencies
/auto/tmpfs/tools/build/v2/build/targets.jam:1302: in class@basic-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:757: in generate-really
/auto/tmpfs/tools/build/v2/build/targets.jam:729: in class@main-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:874: in targets.generate-from-reference
/auto/tmpfs/tools/build/v2/build/targets.jam:1245: in generate-dependencies
/auto/tmpfs/tools/build/v2/build/targets.jam:1302: in class@basic-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:757: in generate-really
/auto/tmpfs/tools/build/v2/build/targets.jam:729: in class@main-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:874: in targets.generate-from-reference
/auto/tmpfs/tools/build/v2/build/targets.jam:1245: in generate-dependencies
/auto/tmpfs/tools/build/v2/build/targets.jam:1302: in alias-target-class.generate
/auto/tmpfs/boostcpp.jam:431: in build-multiple
/auto/tmpfs/boostcpp.jam:393: in class@top-level-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:757: in generate-really
/auto/tmpfs/tools/build/v2/build/targets.jam:729: in class@main-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:874: in targets.generate-from-reference
/auto/tmpfs/tools/build/v2/build/targets.jam:1245: in generate-dependencies
/auto/tmpfs/tools/build/v2/build/targets.jam:1302: in alias-target-class.generate
/auto/tmpfs/boostcpp.jam:431: in build-multiple
/auto/tmpfs/boostcpp.jam:393: in class@top-level-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:757: in generate-really
/auto/tmpfs/tools/build/v2/build/targets.jam:729: in class@main-target.generate
/auto/tmpfs/tools/build/v2/build/targets.jam:272: in class@project-target.generate
/auto/tmpfs/tools/build/v2/build-system.jam:707: in load
/auto/tmpfs/tools/build/v2/kernel/modules.jam:289: in import
/auto/tmpfs/tools/build/v2/kernel/bootstrap.jam:139: in boost-build
/auto/tmpfs/boost-build.jam:17: in module scope

Attachments (2)

build_filesystem (237 bytes ) - added by Bruce Stephens <bruce.r.stephens@…> 9 years ago.
Script to show the problem (run in a boost directory)
bcp.diff (1.3 KB ) - added by Shane Turner <shane.turner@…> 9 years ago.
Patch to BCP to account for BOOST_SYSTEM_NOEXCEPT macro

Download all attachments as: .zip

Change History (12)

by Bruce Stephens <bruce.r.stephens@…>, 9 years ago

Attachment: build_filesystem added

Script to show the problem (run in a boost directory)

comment:1 by Bruce Stephens <bruce.r.stephens@…>, 9 years ago

Bisection indicates that r81808 is the responsible change, though I've no idea why.

r81808 | viboes | 2012-12-09 14:47:39 +0000 (Sun, 09 Dec 2012) | 1 line

System/FileSystem/Asio/Thread: ref #7278 Added noexcept to Boost.System to conform with C++11

comment:2 by Rob Napier <robnapier@…>, 9 years ago

Cc: robnapier@… added

comment:3 by kehlert@…, 9 years ago

I encountered the same error message. I used bcp with the --scan option, then I used bcp again and copied over the build module. Bootstrap ran fine, but I got the same error as listed above. It was fixed after I copied over the directory .../boost_1_54_0/libs/system/build to the stripped out boost directory that bcp copied the files to.

comment:4 by kehlert@…, 9 years ago

but I got the same error as listed above when I ran b2. *

comment:5 by Shane Turner <shane.turner@…>, 9 years ago

Cc: shane.turner@… added

I've discovered while looking at Boost 1.55.0 Beta 1, that the regular expressions in bcp have to be updated to account for the BOOST_SYSTEM_NOEXCEPT macro. I'll attach the diff shortly.

by Shane Turner <shane.turner@…>, 9 years ago

Attachment: bcp.diff added

Patch to BCP to account for BOOST_SYSTEM_NOEXCEPT macro

comment:6 by Shane Turner <shane.turner@…>, 9 years ago

Component: Building Boostbcp
Milestone: To Be DeterminedBoost 1.55.0
Owner: set to John Maddock

comment:7 by John Maddock, 9 years ago

Resolution: fixed
Status: newclosed

(In [86530]) Fix for function declarations which have macroized exception specifications. Fixes #8812.

comment:8 by anonymous, 9 years ago

Component: bcpBuilding Boost
Milestone: Boost 1.55.0To Be Determined

Still seems to fail for me, in what appears to be the same way. I updated to the latest revision, and that is r86530 (with matching comment), and I get the same failure. (The build was using gcc-4.8 since that's now the default. Likely originally it was using gcc-4.7.)

comment:9 by John Maddock, 9 years ago

Ah.... it works if you do a

./b2 --with-filesystem

Or else build from within libs/filesystem/build.

Why a global build fails I have no idea, and frankly my attempts to get meaningful diagnostic information from Boost.Build have completely failed :-(

Given that we're going to be modularizing Boost anyway, I hope this issue will become moot eventually?

comment:10 by molokov+boost@…, 8 years ago

I'm still encountering this error with Boost 1.56.0 on Ubuntu 12.04 LTS with gcc 4.6.3

In fact, in order to even /get/ to this stage, I have to do a lot more with bcp that the original poster suggests. I summarised my efforts on Stack Overflow here: http://stackoverflow.com/questions/26132227/how-do-i-use-bcp-to-extract-a-subset-of-boost-which-can-be-built (including referencing this ticket)

Any advice to proceed further would be appreciated.

Note: See TracTickets for help on using tickets.