It looks like Boost.Log conflicts with Boost.Spirit because they're using different version of Boost Phoenix?
Take this example file:
#include <boost/log/common.hpp>
#include <boost/log/sinks.hpp>
#include <boost/spirit/include/karma.hpp>
int main() {
}
We get this warning:
In file included from /opt/boost_1_54_0/include/boost/log/detail/custom_terminal_spec.hpp:21,
/opt/boost_1_54_0/include/boost/spirit/include/phoenix_core.hpp:13:1: warning: "BOOST_PHOENIX_DEFINE_CUSTOM_TERMINAL" redefined
/opt/boost_1_54_0/include/boost/phoenix/core/terminal.hpp:22:1: warning: this is the location of the previous definition
There are a bunch of errors that result as well.