boostorg / boostorg/boost

spirit utree does not work anymore

Open
#444 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
HTML
Stars
8.6k
Forks
1.9k
Avg merge
39m
Merged PRs (30d)
2

Description

I have a huge parser made with spirit and utree which is working well for quite a long time. Since boost 1.72 (I think), it does not compile anymore (not better with 1.74). I did not change my code. Just a Boost update from my Linux distro (gentoo). Here is the cryptic message. I hope you can be of any help.
Here is the error message with Boost-1.74:

/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: CMakeFiles/strategy-spirit-5.5.0.dir/runstrategyelementvisitors.cpp.o: in function `boost::spirit::utree boost::spirit::function_impl_invert::eval(bool const&)':
/usr/include/boost/spirit/home/support/utree/operators.hpp:545: multiple definition of `boost::spirit::utree boost::spirit::function_impl_invert::eval(bool const&)'; CMakeFiles/strategy-spirit-5.5.0.dir/RunStrategyElement.cpp.o:/usr/include/boost/spirit/home/support/utree/operators.hpp:545: first defined here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: CMakeFiles/strategy-spirit-5.5.0.dir/Strategy.cpp.o: in function `boost::spirit::utree boost::spirit::function_impl_invert::eval(bool const&)':
/usr/include/boost/spirit/home/support/utree/operators.hpp:545: multiple definition of `boost::spirit::utree boost::spirit::function_impl_invert::eval(bool const&)'; CMakeFiles/strategy-spirit-5.5.0.dir/RunStrategyElement.cpp.o:/usr/include/boost/spirit/home/support/utree/operators.hpp:545: first defined here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: CMakeFiles/strategy-spirit-5.5.0.dir/StrategyElement.cpp.o: in function `boost::spirit::utree boost::spirit::function_impl_invert::eval(bool const&)':
/usr/include/boost/spirit/home/support/utree/operators.hpp:545: multiple definition of `boost::spirit::utree boost::spirit::function_impl_invert::eval(bool const&)'; CMakeFiles/strategy-spirit-5.5.0.dir/RunStrategyElement.cpp.o:/usr/include/boost/spirit/home/support/utree/operators.hpp:545: first defined here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: CMakeFiles/strategy-spirit-5.5.0.dir/UtreeWalk.cpp.o: in function `boost::spirit::utree boost::spirit::function_impl_invert::eval(bool const&)':
/usr/include/boost/spirit/home/support/utree/operators.hpp:545: multiple definition of `boost::spirit::utree boost::spirit::function_impl_invert::eval(bool const&)'; CMakeFiles/strategy-spirit-5.5.0.dir/RunStrategyElement.cpp.o:/usr/include/boost/spirit/home/support/utree/operators.hpp:545: first defined here
collect2: error: ld returned 1 exit status

Best,
Bruno

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.