#12724 closed Bugs (invalid)
forward1.hpp:47:37: fatal error: boost/utility/detail/result_of_iterate.hpp: No such file or directory
Reported by: | Owned by: | No-Maintainer | |
---|---|---|---|
Milestone: | To Be Determined | Component: | utility |
Version: | Boost Development Trunk | Severity: | Problem |
Keywords: | Cc: | nico.schloemer@…, Andrey.Semashev@… |
Description
When building Boost from master, I'm getting errors of the kind
`
/boost/preprocessor/iteration/detail/iter/forward1.hpp:47:37: fatal error: boost/utility/detail/result_of_iterate.hpp: No such file or directory
# include BOOST_PP_FILENAME_1
`
(see [1]).
This appears to have come up before [2], but without conclusive fix.
[1] https://launchpadlibrarian.net/301233079/buildlog_ubuntu-yakkety-amd64.boost1.63_1.63.0~20170104224508-03db8ee4-1yakkety1_BUILDING.txt.gz [2] https://svn.boost.org/trac/boost/ticket/11377
Change History (2)
comment:1 by , 6 years ago
Cc: | added |
---|---|
Component: | preprocessor → utility |
Resolution: | → invalid |
Status: | new → closed |
Note:
See TracTickets
for help on using tickets.
The error says
boost/utility/detail/result_of_iterate.hpp
file is missing. I can see the file is present in the current master (inlibs/utility/include/boost/utility/detail
), as well as in the 1.63 archive. It is not clear how the source package (in particular, theboost1.63_1.63.0~20170104224508-03db8ee4.orig.tar.gz
archive) was built, but if it was obtained as a recursive clone from git, you should run "b2 headers
" in Boost root before building Boost. That command will reconstruct theboost
include tree, which is already present in the official Boost archives.Without that command
b2
tries to reconstruct the include tree based on dependency scanning, which does not always work. In particular, it breaks when the header names are not immediately visible in the#include
directives, like when Boost.PP iteration is used. In general, that mechanism should not be relied upon, and "b2 headers
" should be used instead.