Boost logo

Boost Users :

Subject: Re: [Boost-users] linking with boost log 1.54
From: Ovanes Markarian (om_boost_at_[hidden])
Date: 2013-11-20 14:26:10


Eric,

thanks for the suggestion. I just switched to dynamic version and
everything is fine now.

I really can't await C++ modules and hope they will fix that sort of a
problem...

On Wed, Nov 20, 2013 at 8:02 PM, Eric Prud'hommeaux <eric_at_[hidden]> wrote:

> * Ovanes Markarian <om_boost_at_[hidden]> [2013-11-20 17:35+0100]
> > Unfortunately, still had no luck to link the logging library under linux.
> >
> > Please find the list of libraires my application links with:
> >
> > System Libs
> > =========
> > pthread rt dl
> >
> > Boost Libs
> > ========
> > system${boost_suffix}
> > filesystem${boost_suffix}
> > date_time${boost_suffix}
> > program_options${boost_suffix}
> > chrono${boost_suffix}
> > thread${boost_suffix}
> > log${boost_suffix}
> > log_setup${boost_suffix}
> >
> >
> > boost_suffix is -mt. Defining the -DBOOST_LOG_DYN_LINK option makes the
> > linker to only miss the logger library symbols. I assume, because
> > everything else is expected to be within the missing implementations....
>
>
> It looks below like the linker isn't finding your static build of the
> logger. Maybe (outside shot) you need to add an object which
> instantiates a trivial logger to get some of the template functions
> below.
>
> I doubt it will help, but just in case, before boost::log was
> integrated into the main boost distro, I linked to my app with
> something like:
>
> LIBINC += -L$(BOOST_TARGET)lib $(LINK_BOOST_LOG)
> -lboost_thread$(BOOST_SUFFIX) -lboost_filesystem$(BOOST_SUFFIX)
> -lboost_system$(BOOST_SUFFIX) -lboost_date_time$(BOOST_SUFFIX)
>
>
> > ../libsolver.a(solver_impl.cpp.o): In function
> > `boost::log::v2_mt_posix::record
> > boost::log::v2_mt_posix::sources::basic_composite_logger<char,
> >
> boost::log::v2_mt_posix::sources::severity_channel_logger_mt<boost::log::v2_mt_posix::trivial::severity_level,
> > std::string>,
> >
> boost::log::v2_mt_posix::sources::multi_thread_model<boost::log::v2_mt_posix::aux::light_rw_mutex>,
> >
> boost::log::v2_mt_posix::sources::features<boost::log::v2_mt_posix::sources::severity<boost::log::v2_mt_posix::trivial::severity_level>,
> > boost::log::v2_mt_posix::sources::channel<std::string>, void, void, void,
> > void, void, void, void, void>
> >
> >::open_record<boost::parameter::aux::arg_list<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const* const>,
> >
> boost::parameter::aux::arg_list<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::severity,
> > boost::log::v2_mt_posix::trivial::severity_level const>,
> > boost::parameter::aux::empty_arg_list> >
> >
> >(boost::parameter::aux::arg_list<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const* const>,
> >
> boost::parameter::aux::arg_list<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::severity,
> > boost::log::v2_mt_posix::trivial::severity_level const>,
> > boost::parameter::aux::empty_arg_list> > const&)':
> > /usr/local/include/boost/log/sources/basic_logger.hpp:457: undefined
> > reference to `boost::log::v2_mt_posix::core::get_logging_enabled() const'
> > ../libsolver.a(solver_impl.cpp.o): In function `~record_pump':
> > /usr/local/include/boost/log/sources/record_ostream.hpp:278: undefined
> > reference to `boost::log::v2_mt_posix::aux::unhandled_exception_count()'
> > ../libsolver.a(solver_impl.cpp.o): In function `~auto_release':
> > /usr/local/include/boost/log/sources/record_ostream.hpp:243: undefined
> > reference to
> >
> `boost::log::v2_mt_posix::aux::stream_provider<char>::release_compound(boost::log::v2_mt_posix::aux::stream_provider<char>::stream_compound*)'
> > ../libsolver.a(solver_impl.cpp.o): In function
> >
> `boost::log::v2_mt_posix::core::push_record(boost::rv<boost::log::v2_mt_posix::record>&)':
> > /usr/local/include/boost/log/core/core.hpp:308: undefined reference to
> >
> `boost::log::v2_mt_posix::core::push_record_move(boost::log::v2_mt_posix::record&)'
> > ../libsolver.a(solver_impl.cpp.o): In function `record_pump':
> > /usr/local/include/boost/log/sources/record_ostream.hpp:258: undefined
> > reference to
> >
> `boost::log::v2_mt_posix::aux::stream_provider<char>::allocate_compound(boost::log::v2_mt_posix::record&)'
> > /usr/local/include/boost/log/sources/record_ostream.hpp:259: undefined
> > reference to `boost::log::v2_mt_posix::aux::unhandled_exception_count()'
> > ../libsolver.a(solver_impl.cpp.o): In function
> >
> `boost::log::v2_mt_posix::sources::aux::severity_level<boost::log::v2_mt_posix::trivial::severity_level>::set_value(boost::log::v2_mt_posix::trivial::severity_level)':
> > /usr/local/include/boost/log/sources/severity_feature.hpp:135: undefined
> > reference to
> `boost::log::v2_mt_posix::sources::aux::get_severity_level()'
> > ../libsolver.a(solver_impl.cpp.o): In function
> > `boost::log::v2_mt_posix::record
> > boost::log::v2_mt_posix::sources::basic_logger<char,
> >
> boost::log::v2_mt_posix::sources::severity_channel_logger_mt<boost::log::v2_mt_posix::trivial::severity_level,
> > std::string>,
> >
> boost::log::v2_mt_posix::sources::multi_thread_model<boost::log::v2_mt_posix::aux::light_rw_mutex>
> >
> >::open_record_unlocked<boost::parameter::aux::arg_list<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const* const>,
> >
> boost::parameter::aux::arg_list<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::severity,
> > boost::log::v2_mt_posix::trivial::severity_level const>,
> > boost::parameter::aux::empty_arg_list> >
> >
> >(boost::parameter::aux::arg_list<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const* const>,
> >
> boost::parameter::aux::arg_list<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::severity,
> > boost::log::v2_mt_posix::trivial::severity_level const>,
> > boost::parameter::aux::empty_arg_list> > const&)':
> > /usr/local/include/boost/log/sources/basic_logger.hpp:260: undefined
> > reference to
> >
> `boost::log::v2_mt_posix::core::open_record(boost::log::v2_mt_posix::attribute_set
> > const&)'
> > ../libsolver.a(solver_impl.cpp.o): In function
> > `boost::log::v2_mt_posix::attributes::mutable_constant<std::string, void,
> > void, void>::impl::set(std::string const&)':
> > /usr/local/include/boost/log/attributes/mutable_constant.hpp:258:
> undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > new(unsigned long)'
> > /usr/local/include/boost/log/attributes/mutable_constant.hpp:258:
> undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > ../libsolver.a(solver_impl.cpp.o): In function `~attribute_value_impl':
> > /usr/local/include/boost/log/attributes/attribute_value_impl.hpp:47:
> > undefined reference to
> `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > /usr/local/include/boost/log/attributes/attribute_value_impl.hpp:47:
> > undefined reference to
> `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > ../libsolver.a(solver_impl.cpp.o): In function `~impl':
> > /usr/local/include/boost/log/attributes/attribute_value.hpp:74: undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > /usr/local/include/boost/log/attributes/attribute_value.hpp:74: undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> >
> ../libsolver.a(solver_impl.cpp.o):/usr/local/include/boost/log/attributes/attribute.hpp:69:
> > more undefined references to
> > `boost::log::v2_mt_posix::attribute::impl::operator delete(void*,
> unsigned
> > long)' follow
> > ../libsolver.a(solver_impl.cpp.o): In function
> > `boost::log::v2_mt_posix::record::reset()':
> > /usr/local/include/boost/log/core/record.hpp:153: undefined reference to
> >
> `boost::log::v2_mt_posix::record_view::public_data::destroy(boost::log::v2_mt_posix::record_view::public_data
> > const*)'
> > ../libsolver.a(solver_impl.cpp.o): In function
> >
> `boost::log::v2_mt_posix::aux::lazy_singleton<boost::log::v2_mt_posix::sources::aux::logger_singleton<logger>,
> >
> boost::shared_ptr<boost::log::v2_mt_posix::sources::aux::logger_holder<boost::log::v2_mt_posix::sources::severity_channel_logger_mt<boost::log::v2_mt_posix::trivial::severity_level,
> > std::string> > > >::get()':
> > /usr/local/include/boost/log/detail/singleton.hpp:43: undefined reference
> > to `boost::log::v2_mt_posix::aux::once_block_sentry::commit()'
> > ../libsolver.a(solver_impl.cpp.o): In function
> > `boost::log::v2_mt_posix::aux::once_block_sentry::executed() const':
> > /usr/local/include/boost/log/utility/once_block.hpp:90: undefined
> reference
> > to `boost::log::v2_mt_posix::aux::once_block_sentry::enter_once_block()
> > const'
> > ../libsolver.a(solver_impl.cpp.o): In function
> >
> `boost::log::v2_mt_posix::sources::aux::logger_singleton<logger>::init_instance()':
> > /usr/local/include/boost/log/sources/global_logger_storage.hpp:119:
> > undefined reference to
> >
> `boost::log::v2_mt_posix::sources::aux::global_storage::get_or_init(std::type_info
> > const&,
> >
> boost::shared_ptr<boost::log::v2_mt_posix::sources::aux::logger_holder_base>
> > (*)())'
> > /usr/local/include/boost/log/sources/global_logger_storage.hpp:130:
> > undefined reference to
> >
> `boost::log::v2_mt_posix::sources::aux::throw_odr_violation(std::type_info
> > const&, std::type_info const&,
> > boost::log::v2_mt_posix::sources::aux::logger_holder_base const&)'
> > ../libsolver.a(solver_impl.cpp.o): In function `~once_block_sentry':
> > /usr/local/include/boost/log/utility/once_block.hpp:85: undefined
> reference
> > to `boost::log::v2_mt_posix::aux::once_block_sentry::rollback()'
> > ../libsolver.a(solver_impl.cpp.o): In function `~basic_logger':
> > /usr/local/include/boost/log/sources/basic_logger.hpp:80: undefined
> > reference to `boost::log::v2_mt_posix::attribute_set::~attribute_set()'
> > ../libsolver.a(solver_impl.cpp.o): In function
> >
> `boost::log::v2_mt_posix::sources::basic_severity_logger<boost::log::v2_mt_posix::sources::basic_channel_logger<boost::log::v2_mt_posix::sources::basic_logger<char,
> >
> boost::log::v2_mt_posix::sources::severity_channel_logger_mt<boost::log::v2_mt_posix::trivial::severity_level,
> > std::string>,
> >
> boost::log::v2_mt_posix::sources::multi_thread_model<boost::log::v2_mt_posix::aux::light_rw_mutex>
> > >, std::string>,
> >
> boost::log::v2_mt_posix::trivial::severity_level>::basic_severity_logger<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const [7]>
> >
> >(boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const [7]> const&)':
> > /usr/local/include/boost/log/sources/severity_feature.hpp:232: undefined
> > reference to
> > `boost::log::v2_mt_posix::aux::default_attribute_names::severity()'
> > ../libsolver.a(solver_impl.cpp.o): In function
> >
> `boost::log::v2_mt_posix::sources::basic_channel_logger<boost::log::v2_mt_posix::sources::basic_logger<char,
> >
> boost::log::v2_mt_posix::sources::severity_channel_logger_mt<boost::log::v2_mt_posix::trivial::severity_level,
> > std::string>,
> >
> boost::log::v2_mt_posix::sources::multi_thread_model<boost::log::v2_mt_posix::aux::light_rw_mutex>
> > >,
> >
> std::string>::basic_channel_logger<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const [7]>
> >
> >(boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const [7]> const&)':
> > /usr/local/include/boost/log/sources/channel_feature.hpp:134: undefined
> > reference to
> > `boost::log::v2_mt_posix::aux::default_attribute_names::channel()'
> > ../libsolver.a(solver_impl.cpp.o): In function
> > `boost::log::v2_mt_posix::sources::basic_logger<char,
> >
> boost::log::v2_mt_posix::sources::severity_channel_logger_mt<boost::log::v2_mt_posix::trivial::severity_level,
> > std::string>,
> >
> boost::log::v2_mt_posix::sources::multi_thread_model<boost::log::v2_mt_posix::aux::light_rw_mutex>
> > >::add_attribute_unlocked(boost::log::v2_mt_posix::attribute_name const&,
> > boost::log::v2_mt_posix::attribute const&)':
> > /usr/local/include/boost/log/sources/basic_logger.hpp:228: undefined
> > reference to
> >
> `boost::log::v2_mt_posix::attribute_set::insert(boost::log::v2_mt_posix::attribute_name,
> > boost::log::v2_mt_posix::attribute const&)'
> > ../libsolver.a(solver_impl.cpp.o): In function `severity_level':
> > /usr/local/include/boost/log/sources/severity_feature.hpp:98: undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > new(unsigned long)'
> > /usr/local/include/boost/log/sources/severity_feature.hpp:98: undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > ../libsolver.a(solver_impl.cpp.o): In function `~impl':
> > /usr/local/include/boost/log/sources/severity_feature.hpp:65: undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > /usr/local/include/boost/log/sources/severity_feature.hpp:65: undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > ../libsolver.a(solver_impl.cpp.o): In function
> >
> `boost::log::v2_mt_posix::sources::aux::severity_level<boost::log::v2_mt_posix::trivial::severity_level>::impl::dispatch(boost::log::v2_mt_posix::type_dispatcher&)':
> > /usr/local/include/boost/log/sources/severity_feature.hpp:75: undefined
> > reference to
> `boost::log::v2_mt_posix::sources::aux::get_severity_level()'
> > ../libsolver.a(solver_impl.cpp.o): In function
> >
> `boost::log::v2_mt_posix::sources::aux::severity_level<boost::log::v2_mt_posix::trivial::severity_level>::impl::detach_from_thread()':
> > /usr/local/include/boost/log/sources/severity_feature.hpp:86: undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > new(unsigned long)'
> > /usr/local/include/boost/log/sources/severity_feature.hpp:87: undefined
> > reference to
> `boost::log::v2_mt_posix::sources::aux::get_severity_level()'
> > /usr/local/include/boost/log/sources/severity_feature.hpp:87: undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > ../libsolver.a(solver_impl.cpp.o): In function `~attribute_value_impl':
> > /usr/local/include/boost/log/attributes/attribute_value_impl.hpp:47:
> > undefined reference to
> `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > /usr/local/include/boost/log/attributes/attribute_value_impl.hpp:47:
> > undefined reference to
> `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > ../libsolver.a(solver_impl.cpp.o): In function
> > `boost::log::v2_mt_posix::sources::basic_logger<char,
> >
> boost::log::v2_mt_posix::sources::severity_channel_logger_mt<boost::log::v2_mt_posix::trivial::severity_level,
> > std::string>,
> >
> boost::log::v2_mt_posix::sources::multi_thread_model<boost::log::v2_mt_posix::aux::light_rw_mutex>
> >
> >::basic_logger<boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const [7]>
> >
> >(boost::parameter::aux::tagged_argument<boost::log::v2_mt_posix::keywords::tag::channel,
> > char const [7]> const&)':
> > /usr/local/include/boost/log/sources/basic_logger.hpp:172: undefined
> > reference to `boost::log::v2_mt_posix::core::get()'
> > /usr/local/include/boost/log/sources/basic_logger.hpp:172: undefined
> > reference to `boost::log::v2_mt_posix::attribute_set::attribute_set()'
> > ../libsolver.a(solver_impl.cpp.o): In function `mutable_constant':
> > /usr/local/include/boost/log/attributes/mutable_constant.hpp:276:
> undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > new(unsigned long)'
> > /usr/local/include/boost/log/attributes/mutable_constant.hpp:276:
> undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > ../libsolver.a(solver_impl.cpp.o): In function `impl':
> > /usr/local/include/boost/log/attributes/mutable_constant.hpp:242:
> undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > new(unsigned long)'
> > /usr/local/include/boost/log/attributes/mutable_constant.hpp:242:
> undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > ../libsolver.a(solver_impl.cpp.o): In function `~impl':
> > /usr/local/include/boost/log/attributes/mutable_constant.hpp:226:
> undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > /usr/local/include/boost/log/attributes/mutable_constant.hpp:226:
> undefined
> > reference to `boost::log::v2_mt_posix::attribute::impl::operator
> > delete(void*, unsigned long)'
> > ../libsolver.a(solver_impl.cpp.o): In function `basic_severity_logger':
> > /usr/local/include/boost/log/sources/severity_feature.hpp:209: undefined
> > reference to
> > `boost::log::v2_mt_posix::aux::default_attribute_names::severity()'
> > ../libsolver.a(solver_impl.cpp.o): In function `basic_channel_logger':
> > /usr/local/include/boost/log/sources/channel_feature.hpp:112: undefined
> > reference to
> > `boost::log::v2_mt_posix::aux::default_attribute_names::channel()'
> > ../libsolver.a(solver_impl.cpp.o): In function
> >
> `boost::log::v2_mt_posix::aux::attribute_set_reference_proxy::operator=(boost::log::v2_mt_posix::attribute
> > const&) const':
> > /usr/local/include/boost/log/attributes/attribute_set.hpp:484: undefined
> > reference to
> >
> `boost::log::v2_mt_posix::attribute_set::insert(boost::log::v2_mt_posix::attribute_name,
> > boost::log::v2_mt_posix::attribute const&)'
> > ../libsolver.a(solver_impl.cpp.o): In function `basic_logger':
> > /usr/local/include/boost/log/sources/basic_logger.hpp:148: undefined
> > reference to `boost::log::v2_mt_posix::core::get()'
> > /usr/local/include/boost/log/sources/basic_logger.hpp:148: undefined
> > reference to
> >
> `boost::log::v2_mt_posix::attribute_set::attribute_set(boost::log::v2_mt_posix::attribute_set
> > const&)'
> > clang: error: linker command failed with exit code 1 (use -v to see
> > invocation)
> >
> >
> >
> > On Wed, Nov 20, 2013 at 4:16 PM, Ovanes Markarian <
> om_boost_at_[hidden]>wrote:
> >
> > > Lars,
> > >
> > > thanks for your answer. I will try your proposal, we only have static
> libs
> > > which we assemble into an executable. So boost log should be fine
> here. I
> > > also link filesystem etc, but not dl. May be that is the error.
> > >
> > >
> > > I will try it.
> > >
> > > Thanks,
> > > Ovanes
> > >
> > >
> > > On Wed, Nov 20, 2013 at 3:30 PM, Lars Viklund <zao_at_[hidden]> wrote:
> > >
> > >> On Wed, Nov 20, 2013 at 03:16:54PM +0100, Ovanes Markarian wrote:
> > >> > Hi *,
> > >> >
> > >> > I am stuck with a problem to link on linux (ubuntu 12.04) with a
> boost
> > >> log
> > >> > library (clang 3.0 & libstdc++).
> > >> >
> > >> > No matter what I do it fails. The problem is:
> > >> >
> > >> > I have a 3rd party library which is delivered as an .so-module and I
> > >> need
> > >> > to link with it. My project is organized so that we develop static
> > >> > libraries and link them with test or application runner executables.
> > >> >
> > >> > I currently build boost as static libraries only, after I link my
> > >> project
> > >> > with log library I get tons of errors like:
> > >> >
> > >> >
> > >>
> /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libpthread.a(nptl-init.o):
> > >> > In function `__pthread_initialize_minimal_internal':
> > >> > /build/buildd/eglibc-2.15/nptl/nptl-init.c:296: undefined reference
> to
> > >> > `__libc_setup_tls'
> > >> > /build/buildd/eglibc-2.15/nptl/nptl-init.c:314: undefined reference
> to
> > >> > `_dl_cpuclock_offset'
> > >> > /build/buildd/eglibc-2.15/nptl/nptl-init.c:430: undefined reference
> to
> > >> > `_dl_pagesize'
> > >> > /build/buildd/eglibc-2.15/nptl/nptl-init.c:456: undefined reference
> to
> > >> > `_dl_init_static_tls'
> > >> > /build/buildd/eglibc-2.15/nptl/nptl-init.c:458: undefined reference
> to
> > >> > `_dl_wait_lookup_done'
> > >> >
> > >>
> /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libpthread.a(nptl-init.o):
> > >> > In function `__pthread_get_minstack':
> > >> > /build/buildd/eglibc-2.15/nptl/nptl-init.c:479: undefined reference
> to
> > >> > `_dl_pagesize'
> > >> >
> > >>
> /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libpthread.a(pthread_create.o):
> > >> > In function `allocate_stack':
> > >> > /build/buildd/eglibc-2.15/nptl/allocatestack.c:457: undefined
> reference
> > >> to
> > >> > `_dl_stack_flags'
> > >> > /build/buildd/eglibc-2.15/nptl/allocatestack.c:596: undefined
> reference
> > >> to
> > >> > `_dl_stack_flags'
> > >> > /usr/local/lib/libboost_log-mt-s.a(text_file_backend.o): In function
> > >> >
> > >>
> `boost::log::v2s_mt_posix::sinks::anonymous::file_collector::file_collector(boost::shared_ptr<boost::log::v2s_mt_posix::sinks::anonymous::file_collector_repository>
> > >> > const&, boost::filesystem::path const&, unsigned long, unsigned
> long)':
> > >> > libs/log/src/text_file_backend.cpp:(.text+0x60b): undefined
> reference to
> > >> >
> `boost::filesystem::detail::current_path(boost::system::error_code*)'
> > >> > libs/log/src/text_file_backend.cpp:(.text+0x65c): undefined
> reference to
> > >> > `boost::filesystem::absolute(boost::filesystem::path const&,
> > >> > boost::filesystem::path const&)'
> > >> > libs/log/src/text_file_backend.cpp:(.text+0x6b1): undefined
> reference to
> > >> >
> `boost::filesystem::detail::create_directories(boost::filesystem::path
> > >> > const&, boost::system::error_code*)'
> > >> >
> > >> > And so on. Do you have any hints or suggestions?
> > >>
> > >> No matter which platform you target, static libraries have the amusing
> > >> property that they're pretty much a lump of object files, and as such,
> > >> are not linked to any libraries at build time.
> > >>
> > >> Thus, you need to link to any libraries that Boost.Log uses when you
> > >> link to a static Boost.Log. Judging by your errors, this would be
> > >> -lboost_filesystem, -ldl and possibly building with -pthread,
> depending
> > >> on your toolchain.
> > >>
> > >> Also note that if you use Boost.Log in more than one module (DLL,
> shared
> > >> object), you need to use the shared Boost.Log library as indicated by
> > >> the documentation [1].
> > >>
> > >>
> > >>
> http://www.boost.org/doc/libs/1_55_0/libs/log/doc/html/log/installation/config.html
> > >>
> > >> --
> > >> Lars Viklund | zao_at_[hidden]
> > >> _______________________________________________
> > >> Boost-users mailing list
> > >> Boost-users_at_[hidden]
> > >> http://lists.boost.org/mailman/listinfo.cgi/boost-users
> > >>
> > >
> > >
>
> > _______________________________________________
> > Boost-users mailing list
> > Boost-users_at_[hidden]
> > http://lists.boost.org/mailman/listinfo.cgi/boost-users
>
>
> --
> -ericP
>
> office: +1.617.599.3509
> mobile: +33.6.80.80.35.59
>
> (eric_at_[hidden])
> Feel free to forward this message to any list for any purpose other than
> email address distribution.
>
> There are subtle nuances encoded in font variation and clever layout
> which can only be seen by printing this message on high-clay paper.
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net