
On 22/07/13 05:16 AM, Klaim - Joël Lamotte wrote:
On Mon, Jul 22, 2013 at 9:00 AM, Leo Carreon <lcarreon@bigpond.net.au>wrote:
If I'm not mistaken, you need to have -DBOOST_LOG_DYN_LINK on the compile and link command lines.
Only if you compiled boost (or got a package where boost) with dynamic linking. With static linking you don't need this.
However, make sure that you are linking with log_setup too.
Joel Lamotte
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users Ok, so I got my little sample boost log app to work (by adding -DBOOST_LOG_DYN_LINK to the compiler/linker).
So I fixed up my main application (which is using boost log and also boost wave). However, I'm getting a crap ton of errors regarding boost::phoenix (which I don't use, but I guess boost::wave relies on it?) This all worked with Boost 1.52, so I'm not sure what I'm doing wrong now...(I'm using boost trunk now). I'm using the following boost libraries: boost_log boost_log_setup boost_date_time boost_thread boost_wave boost_regex boost_program_options and I added the BOOST_ALL_DYN_LINK as a compiler/linker define... *An excerpt of the errors is*: ... /usr/local/include/boost/spirit/home/phoenix/core/argument.hpp:87:35: error: 'boost::phoenix::arg_names::_2' has a previous declaration as 'const boost::phoenix::actor<boost::phoenix::argument<1> > boost::phoenix::arg_names::_2' In file included from /usr/local/include/boost/phoenix/core/preprocessed/argument.hpp:14:0, from /usr/local/include/boost/phoenix/core/argument.hpp:74, from /usr/local/include/boost/log/expressions/formatters/stream.hpp:18, from /usr/local/include/boost/log/utility/setup/formatter_parser.hpp:31, from /usr/local/include/boost/log/detail/sink_init_helpers.hpp:30, from /usr/local/include/boost/log/utility/setup/file.hpp:28, from src/game/../common/logging/Logger.h:15, from src/game/Debug.h:11, from src/game/Game.cpp:15: /usr/local/include/boost/phoenix/core/preprocessed/argument_predefined_10.hpp:21:143: error: conflicting declaration 'const type boost::phoenix::arg_names::_3' In file included from /usr/local/include/boost/spirit/home/phoenix/core.hpp:16:0, from /usr/local/include/boost/spirit/include/phoenix_core.hpp:14, from /usr/local/include/boost/spirit/home/support/make_component.hpp:15, from /usr/local/include/boost/spirit/home/support/meta_compiler.hpp:20, from /usr/local/include/boost/spirit/home/qi/meta_compiler.hpp:14, from /usr/local/include/boost/spirit/home/qi/action/action.hpp:14, from /usr/local/include/boost/spirit/home/qi/action.hpp:14, from /usr/local/include/boost/spirit/home/qi.hpp:14, from /usr/local/include/boost/spirit/include/qi.hpp:16, from ../glr/src/glw/shaders/GlrParser.h:17, from ../glr/src/glw/shaders/GlrShader.h:36, from ../glr/src/glw/shaders/GlrShaderProgram.h:28, from ../glr/src/glw/shaders/ShaderProgramManager.h:20, from ../glr/src/glw/OpenGlDevice.h:20, from ../glr/src/GlrProgram.h:18, from ../glr/src/GraphicsEngine.h:13, from ../glr/src/GLRInclude.h:16, from src/game/Game.h:18, from src/game/Game.cpp:10: /usr/local/include/boost/spirit/home/phoenix/core/argument.hpp:89:35: error: 'boost::phoenix::arg_names::_3' has a previous declaration as 'const boost::phoenix::actor<boost::phoenix::argument<2> > boost::phoenix::arg_names::_3' In file included from /usr/local/include/boost/phoenix/core/preprocessed/argument.hpp:14:0, from /usr/local/include/boost/phoenix/core/argument.hpp:74, from /usr/local/include/boost/log/expressions/formatters/stream.hpp:18, from /usr/local/include/boost/log/utility/setup/formatter_parser.hpp:31, from /usr/local/include/boost/log/detail/sink_init_helpers.hpp:30, from /usr/local/include/boost/log/utility/setup/file.hpp:28, from src/game/../common/logging/Logger.h:15, from src/game/Debug.h:11, from src/game/Game.cpp:15: /usr/local/include/boost/phoenix/core/preprocessed/argument_predefined_10.hpp:21:192: error: conflicting declaration 'const type boost::phoenix::arg_names::_4' In file included from /usr/local/include/boost/spirit/home/phoenix/core.hpp:16:0, from /usr/local/include/boost/spirit/include/phoenix_core.hpp:14, from /usr/local/include/boost/spirit/home/support/make_component.hpp:15, from /usr/local/include/boost/spirit/home/support/meta_compiler.hpp:20, from /usr/local/include/boost/spirit/home/qi/meta_compiler.hpp:14, from /usr/local/include/boost/spirit/home/qi/action/action.hpp:14, from /usr/local/include/boost/spirit/home/qi/action.hpp:14, from /usr/local/include/boost/spirit/home/qi.hpp:14, from /usr/local/include/boost/spirit/include/qi.hpp:16, from ../glr/src/glw/shaders/GlrParser.h:17, from ../glr/src/glw/shaders/GlrShader.h:36, from ../glr/src/glw/shaders/GlrShaderProgram.h:28, from ../glr/src/glw/shaders/ShaderProgramManager.h:20, from ../glr/src/glw/OpenGlDevice.h:20, from ../glr/src/GlrProgram.h:18, from ../glr/src/GraphicsEngine.h:13, from ../glr/src/GLRInclude.h:16, from src/game/Game.h:18, from src/game/Game.cpp:10: /usr/local/include/boost/spirit/home/phoenix/core/argument.hpp:94:1: error: 'boost::phoenix::arg_names::_4' has a previous declaration as 'const boost::phoenix::actor<boost::phoenix::argument<3> > boost::phoenix::arg_names::_4' In file included from /usr/local/include/boost/phoenix/core/preprocessed/argument.hpp:14:0, from /usr/local/include/boost/phoenix/core/argument.hpp:74, from /usr/local/include/boost/log/expressions/formatters/stream.hpp:18, from /usr/local/include/boost/log/utility/setup/formatter_parser.hpp:31, from /usr/local/include/boost/log/detail/sink_init_helpers.hpp:30, from /usr/local/include/boost/log/utility/setup/file.hpp:28, from src/game/../common/logging/Logger.h:15, from src/game/Debug.h:11, from src/game/Game.cpp:15: /usr/local/include/boost/phoenix/core/preprocessed/argument_predefined_10.hpp:21:241: error: conflicting declaration 'const type boost::phoenix::arg_names::_5' In file included from /usr/local/include/boost/spirit/home/phoenix/core.hpp:16:0, from /usr/local/include/boost/spirit/include/phoenix_core.hpp:14, from /usr/local/include/boost/spirit/home/support/make_component.hpp:15, from /usr/local/include/boost/spirit/home/support/meta_compiler.hpp:20, from /usr/local/include/boost/spirit/home/qi/meta_compiler.hpp:14, from /usr/local/include/boost/spirit/home/qi/action/action.hpp:14, from /usr/local/include/boost/spirit/home/qi/action.hpp:14, from /usr/local/include/boost/spirit/home/qi.hpp:14, from /usr/local/include/boost/spirit/include/qi.hpp:16, from ../glr/src/glw/shaders/GlrParser.h:17, from ../glr/src/glw/shaders/GlrShader.h:36, from ../glr/src/glw/shaders/GlrShaderProgram.h:28, from ../glr/src/glw/shaders/ShaderProgramManager.h:20, from ../glr/src/glw/OpenGlDevice.h:20, from ../glr/src/GlrProgram.h:18, from ../glr/src/GraphicsEngine.h:13, from ../glr/src/GLRInclude.h:16, from src/game/Game.h:18, from src/game/Game.cpp:10: /usr/local/include/boost/spirit/home/phoenix/core/argument.hpp:94:1: error: 'boost::phoenix::arg_names::_5' has a previous declaration as 'const boost::phoenix::actor<boost::phoenix::argument<4> > boost::phoenix::arg_names::_5' In file included from /usr/local/include/boost/phoenix/core/preprocessed/argument.hpp:14:0, from /usr/local/include/boost/phoenix/core/argument.hpp:74, from /usr/local/include/boost/log/expressions/formatters/stream.hpp:18, from /usr/local/include/boost/log/utility/setup/formatter_parser.hpp:31, from /usr/local/include/boost/log/detail/sink_init_helpers.hpp:30, from /usr/local/include/boost/log/utility/setup/file.hpp:28, from src/game/../common/logging/Logger.h:15, from src/game/Debug.h:11, from src/game/Game.cpp:15: /usr/local/include/boost/phoenix/core/preprocessed/argument_predefined_10.hpp:21:290: error: conflicting declaration 'const type boost::phoenix::arg_names::_6' In file included from /usr/local/include/boost/spirit/home/phoenix/core.hpp:16:0, from /usr/local/include/boost/spirit/include/phoenix_core.hpp:14, from /usr/local/include/boost/spirit/home/support/make_component.hpp:15, from /usr/local/include/boost/spirit/home/support/meta_compiler.hpp:20, from /usr/local/include/boost/spirit/home/qi/meta_compiler.hpp:14, from /usr/local/include/boost/spirit/home/qi/action/action.hpp:14, from /usr/local/include/boost/spirit/home/qi/action.hpp:14, from /usr/local/include/boost/spirit/home/qi.hpp:14, from /usr/local/include/boost/spirit/include/qi.hpp:16, from ../glr/src/glw/shaders/GlrParser.h:17, from ../glr/src/glw/shaders/GlrShader.h:36, from ../glr/src/glw/shaders/GlrShaderProgram.h:28, from ../glr/src/glw/shaders/ShaderProgramManager.h:20, from ../glr/src/glw/OpenGlDevice.h:20, from ../glr/src/GlrProgram.h:18, from ../glr/src/GraphicsEngine.h:13, from ../glr/src/GLRInclude.h:16, from src/game/Game.h:18, from src/game/Game.cpp:10: /usr/local/include/boost/spirit/home/phoenix/core/argument.hpp:94:1: error: 'boost::phoenix::arg_names::_6' has a previous declaration as 'const boost::phoenix::actor<boost::phoenix::argument<5> > boost::phoenix::arg_names::_6' In file included from /usr/local/include/boost/phoenix/core/preprocessed/argument.hpp:14:0, from /usr/local/include/boost/phoenix/core/argument.hpp:74, from /usr/local/include/boost/log/expressions/formatters/stream.hpp:18, from /usr/local/include/boost/log/utility/setup/formatter_parser.hpp:31, from /usr/local/include/boost/log/detail/sink_init_helpers.hpp:30, from /usr/local/include/boost/log/utility/setup/file.hpp:28, from src/game/../common/logging/Logger.h:15, from src/game/Debug.h:11, from src/game/Game.cpp:15: /usr/local/include/boost/phoenix/core/preprocessed/argument_predefined_10.hpp:21:339: error: conflicting declaration 'const type boost::phoenix::arg_names::_7' In file included from /usr/local/include/boost/spirit/home/phoenix/core.hpp:16:0, from /usr/local/include/boost/spirit/include/phoenix_core.hpp:14, from /usr/local/include/boost/spirit/home/support/make_component.hpp:15, from /usr/local/include/boost/spirit/home/support/meta_compiler.hpp:20, from /usr/local/include/boost/spirit/home/qi/meta_compiler.hpp:14, from /usr/local/include/boost/spirit/home/qi/action/action.hpp:14, from /usr/local/include/boost/spirit/home/qi/action.hpp:14, from /usr/local/include/boost/spirit/home/qi.hpp:14, from /usr/local/include/boost/spirit/include/qi.hpp:16, from ../glr/src/glw/shaders/GlrParser.h:17, from ../glr/src/glw/shaders/GlrShader.h:36, from ../glr/src/glw/shaders/GlrShaderProgram.h:28, from ../glr/src/glw/shaders/ShaderProgramManager.h:20, from ../glr/src/glw/OpenGlDevice.h:20, from ../glr/src/GlrProgram.h:18, from ../glr/src/GraphicsEngine.h:13, from ../glr/src/GLRInclude.h:16, from src/game/Game.h:18, from src/game/Game.cpp:10: /usr/local/include/boost/spirit/home/phoenix/core/argument.hpp:94:1: error: 'boost::phoenix::arg_names::_7' has a previous declaration as 'const boost::phoenix::actor<boost::phoenix::argument<6> > boost::phoenix::arg_names::_7' In file included from /usr/local/include/boost/phoenix/core/preprocessed/argument.hpp:14:0, from /usr/local/include/boost/phoenix/core/argument.hpp:74, from /usr/local/include/boost/log/expressions/formatters/stream.hpp:18, from /usr/local/include/boost/log/utility/setup/formatter_parser.hpp:31, from /usr/local/include/boost/log/detail/sink_init_helpers.hpp:30, from /usr/local/include/boost/log/utility/setup/file.hpp:28, from src/game/../common/logging/Logger.h:15, from src/game/Debug.h:11, from src/game/Game.cpp:15: /usr/local/include/boost/phoenix/core/preprocessed/argument_predefined_10.hpp:21:388: error: conflicting declaration 'const type boost::phoenix::arg_names::_8' In file included from /usr/local/include/boost/spirit/home/phoenix/core.hpp:16:0, from /usr/local/include/boost/spirit/include/phoenix_core.hpp:14, from /usr/local/include/boost/spirit/home/support/make_component.hpp:15, from /usr/local/include/boost/spirit/home/support/meta_compiler.hpp:20, from /usr/local/include/boost/spirit/home/qi/meta_compiler.hpp:14, from /usr/local/include/boost/spirit/home/qi/action/action.hpp:14, from /usr/local/include/boost/spirit/home/qi/action.hpp:14, from /usr/local/include/boost/spirit/home/qi.hpp:14, from /usr/local/include/boost/spirit/include/qi.hpp:16, from ../glr/src/glw/shaders/GlrParser.h:17, from ../glr/src/glw/shaders/GlrShader.h:36, from ../glr/src/glw/shaders/GlrShaderProgram.h:28, from ../glr/src/glw/shaders/ShaderProgramManager.h:20, from ../glr/src/glw/OpenGlDevice.h:20, from ../glr/src/GlrProgram.h:18, from ../glr/src/GraphicsEngine.h:13, from ../glr/src/GLRInclude.h:16, from src/game/Game.h:18, from src/game/Game.cpp:10: /usr/local/include/boost/spirit/home/phoenix/core/argument.hpp:94:1: error: 'boost::phoenix::arg_names::_8' has a previous declaration as 'const boost::phoenix::actor<boost::phoenix::argument<7> > boost::phoenix::arg_names::_8' In file included from /usr/local/include/boost/phoenix/core/preprocessed/argument.hpp:14:0, from /usr/local/include/boost/phoenix/core/argument.hpp:74, from /usr/local/include/boost/log/expressions/formatters/stream.hpp:18, from /usr/local/include/boost/log/utility/setup/formatter_parser.hpp:31, from /usr/local/include/boost/log/detail/sink_init_helpers.hpp:30, from /usr/local/include/boost/log/utility/setup/file.hpp:28, from src/game/../common/logging/Logger.h:15, from src/game/Debug.h:11, from src/game/Game.cpp:15: /usr/local/include/boost/phoenix/core/preprocessed/argument_predefined_10.hpp:21:437: error: conflicting declaration 'const type boost::phoenix::arg_names::_9' In file included from /usr/local/include/boost/spirit/home/phoenix/core.hpp:16:0, from /usr/local/include/boost/spirit/include/phoenix_core.hpp:14, from /usr/local/include/boost/spirit/home/support/make_component.hpp:15, from /usr/local/include/boost/spirit/home/support/meta_compiler.hpp:20, from /usr/local/include/boost/spirit/home/qi/meta_compiler.hpp:14, from /usr/local/include/boost/spirit/home/qi/action/action.hpp:14, from /usr/local/include/boost/spirit/home/qi/action.hpp:14, from /usr/local/include/boost/spirit/home/qi.hpp:14, from /usr/local/include/boost/spirit/include/qi.hpp:16, from ../glr/src/glw/shaders/GlrParser.h:17, from ../glr/src/glw/shaders/GlrShader.h:36, from ../glr/src/glw/shaders/GlrShaderProgram.h:28, from ../glr/src/glw/shaders/ShaderProgramManager.h:20, from ../glr/src/glw/OpenGlDevice.h:20, from ../glr/src/GlrProgram.h:18, from ../glr/src/GraphicsEngine.h:13, from ../glr/src/GLRInclude.h:16, from src/game/Game.h:18, from src/game/Game.cpp:10: /usr/local/include/boost/spirit/home/phoenix/core/argument.hpp:94:1: error: 'boost::phoenix::arg_names::_9' has a previous declaration as 'const boost::phoenix::actor<boost::phoenix::argument<8> > boost::phoenix::arg_names::_9' In file included from /usr/local/include/boost/phoenix/core/preprocessed/argument.hpp:14:0, from /usr/local/include/boost/phoenix/core/argument.hpp:74, from /usr/local/include/boost/log/expressions/formatters/stream.hpp:18, from /usr/local/include/boost/log/utility/setup/formatter_parser.hpp:31, from /usr/local/include/boost/log/detail/sink_init_helpers.hpp:30, from /usr/local/include/boost/log/utility/setup/file.hpp:28, from src/game/../common/logging/Logger.h:15, from src/game/Debug.h:11, from src/game/Game.cpp:15: /usr/local/include/boost/phoenix/core/preprocessed/argument_predefined_10.hpp:21:487: error: conflicting declaration 'const type boost::phoenix::arg_names::_10' In file included from /usr/local/include/boost/spirit/home/phoenix/core.hpp:16:0, from /usr/local/include/boost/spirit/include/phoenix_core.hpp:14, from /usr/local/include/boost/spirit/home/support/make_component.hpp:15, from /usr/local/include/boost/spirit/home/support/meta_compiler.hpp:20, from /usr/local/include/boost/spirit/home/qi/meta_compiler.hpp:14, from /usr/local/include/boost/spirit/home/qi/action/action.hpp:14, from /usr/local/include/boost/spirit/home/qi/action.hpp:14, from /usr/local/include/boost/spirit/home/qi.hpp:14, from /usr/local/include/boost/spirit/include/qi.hpp:16, from ../glr/src/glw/shaders/GlrParser.h:17, from ../glr/src/glw/shaders/GlrShader.h:36, from ../glr/src/glw/shaders/GlrShaderProgram.h:28, from ../glr/src/glw/shaders/ShaderProgramManager.h:20, from ../glr/src/glw/OpenGlDevice.h:20, from ../glr/src/GlrProgram.h:18, from ../glr/src/GraphicsEngine.h:13, from ../glr/src/GLRInclude.h:16, from src/game/Game.h:18, from src/game/Game.cpp:10: /usr/local/include/boost/spirit/home/phoenix/core/argument.hpp:94:1: error: 'boost::phoenix::arg_names::_10' has a previous declaration as 'const boost::phoenix::actor<boost::phoenix::argument<9> > boost::phoenix::arg_names::_10' Anyone have any ideas? Cheers Jarrett