Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ g++;针对Boost.Log的静态链接错误_C++_Logging_Boost_G++_Boost Log - Fatal编程技术网

C++ g++;针对Boost.Log的静态链接错误

C++ g++;针对Boost.Log的静态链接错误,c++,logging,boost,g++,boost-log,C++,Logging,Boost,G++,Boost Log,当静态链接Boost.Log时,会出现链接错误。编译器版本为g++4.8.1。Boost版本是1.55.0。 我可以毫无问题地进行动态链接(使用make文件中的“-DBOOST_LOG_DYN_link”),但当我进行静态链接时,会出现链接错误。这个问题不会发生在其他boost库上。我简化了代码,以便轻松重现此问题: #include <boost/log/trivial.hpp> int main() { BOOST_LOG_TRIVIAL(trace) <<

当静态链接Boost.Log时,会出现链接错误。编译器版本为g++4.8.1。Boost版本是1.55.0。 我可以毫无问题地进行动态链接(使用make文件中的“-DBOOST_LOG_DYN_link”),但当我进行静态链接时,会出现链接错误。这个问题不会发生在其他boost库上。我简化了代码,以便轻松重现此问题:

#include <boost/log/trivial.hpp>
int main()
{
    BOOST_LOG_TRIVIAL(trace) << "test trace";
    return 0;
}
但是,如果我显式指定lib文件,则不会出现任何问题:

g++ test.cpp -lboost_thread /usr/local/lib/libboost_log.a
我还尝试添加-L选项并得到相同的错误:

g++ test.cpp -L/usr/local/lib -lboost_thread -lboost_log
以下是错误日志:

test.cpp:(.text+0x29): undefined reference to `boost::log::v2s_mt_posix::trivial::logger::get()'
test.cpp:(.text+0x70): undefined reference to `boost::log::v2s_mt_posix::trivial::logger::get()'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::record::reset()':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix6record5resetEv[_ZN5boost3log12v2s_mt_posix6record5resetEv]+0x23): undefined reference to `boost::log::v2s_mt_posix::record_view::public_data::destroy(boost::log::v2s_mt_posix::record_view::public_data const*)'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::record boost::log::v2s_mt_posix::sources::basic_composite_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex>, boost::log::v2s_mt_posix::sources::features<boost::log::v2s_mt_posix::sources::severity<boost::log::v2s_mt_posix::trivial::severity_level>, void, void, void, void, void, void, void, void, void> >::open_record<boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> >(boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> const&)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix7sources22basic_composite_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEENS2_8featuresINS2_8severityIS6_EEvvvvvvvvvEEE11open_recordINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_[_ZN5boost3log12v2s_mt_posix7sources22basic_composite_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEENS2_8featuresINS2_8severityIS6_EEvvvvvvvvvEEE11open_recordINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_]+0x2d): undefined reference to `boost::log::v2s_mt_posix::core::get_logging_enabled() const'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level> >::~record_pump()':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEED2Ev[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEED5Ev]+0x3c): undefined reference to `boost::log::v2s_mt_posix::aux::unhandled_exception_count()'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level> >::record_pump(boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>&, boost::log::v2s_mt_posix::record&)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC2ERS8_RNS1_6recordE[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC5ERS8_RNS1_6recordE]+0x2f): undefined reference to `boost::log::v2s_mt_posix::aux::stream_provider<char>::allocate_compound(boost::log::v2s_mt_posix::record&)'
test.cpp:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC2ERS8_RNS1_6recordE[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC5ERS8_RNS1_6recordE]+0x3c): undefined reference to `boost::log::v2s_mt_posix::aux::unhandled_exception_count()'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level> >::auto_release::~auto_release()':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEE12auto_releaseD2Ev[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEE12auto_releaseD5Ev]+0x17): undefined reference to `boost::log::v2s_mt_posix::aux::stream_provider<char>::release_compound(boost::log::v2s_mt_posix::aux::stream_provider<char>::stream_compound*)'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::sources::aux::severity_level<boost::log::v2s_mt_posix::trivial::severity_level>::set_value(boost::log::v2s_mt_posix::trivial::severity_level)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix7sources3aux14severity_levelINS1_7trivial14severity_levelEE9set_valueES6_[_ZN5boost3log12v2s_mt_posix7sources3aux14severity_levelINS1_7trivial14severity_levelEE9set_valueES6_]+0x10): undefined reference to `boost::log::v2s_mt_posix::sources::aux::get_severity_level()'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::record boost::log::v2s_mt_posix::sources::basic_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex> >::open_record_unlocked<boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> >(boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> const&)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20open_record_unlockedINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_[_ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20open_record_unlockedINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_]+0x3e): undefined reference to `boost::log::v2s_mt_posix::core::open_record(boost::log::v2s_mt_posix::attribute_set const&)'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::sources::basic_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex> >::push_record_unlocked(boost::rv<boost::log::v2s_mt_posix::record>&)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20push_record_unlockedERNS_2rvINS1_6recordEEE[_ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20push_record_unlockedERNS_2rvINS1_6recordEEE]+0x47): undefined reference to `boost::log::v2s_mt_posix::core::push_record_move(boost::log::v2s_mt_posix::record&)'
collect2: error: ld returned 1 exit status
test.cpp:(.text+0x29):对“boost::log::v2s\u mt\u posix::triple::logger::get()的未定义引用”
test.cpp:(.text+0x70):对“boost::log::v2s\u mt_posix::trival::logger::get()”的未定义引用
/tmp/ccDUZ2gm.o:在函数“boost::log::v2s\u mt\u posix::record::reset()”中:
test.cpp:(.text.ZN5boost3log12v2s_mt_posix6record5resetEv[ZN5boost3log12v2s_mt_posix6record5resetEv]+0x23):未定义对“boost::log::v2s_mt_posix::record_view::public_data::destroy(boost::log::v2s_mt posix::record_view::public_data const*)”的引用
/tmp/ccDUZ2gm.o:在函数“boost::log::v2s_mt_posix::record boost::log::v2s_mt_posix::sources::basic_composite_logger::open_record(boost::parameter::aux::taged_argument const&)”中:
测试。cpp:(.text.)_[ZN5boost3log12v2s\u mt\u posix7源2基本复合记录2\u严重性\u记录器1\u一般严重性\u级别2\u多线程\u模型1\u 0x14轻型\u rw mutexeens 2 \u 8严重性6\u EEVVVvvee11打开记录2\u标记参数3\u关键字标记Severityeks6\u记录2]:对“boost::log::v2s\u mt\u posix::core::get\u logging\u enabled()const”的未定义引用
/tmp/ccDUZ2gm.o:在函数'boost::log::v2s_mt_posix::aux::record_pump::~record_pump()':
test.cpp:(.text. ZN5boost3log12v2s_mt_posix3aux11记录_泵1_源18严重性_记录器_mtINS1_7;平凡14严重性_水平eed2ev)[ZN5boost3log12v2s_mtu posix3aux11记录_泵1_源18严重性_记录器_mtINS1_平凡14严重性_水平eed5ev+0x3; 0x3;
/tmp/ccDUZ2gm.o:在函数“boost::log::v2s_mt_posix::aux::record_pump::record_pump::record_pump”(boost::log::v2s_mt_posix::sources::severity_logger_mt&,boost::log::v2s_mt_posix::record&):
测试。cpp:(.text. boost3log12v2s"mt"posix3aux11记录"泵源"严重程度"记录器"一般严重程度"等级eec2ers8"RNS1"记录["ZN5boost3log12v2s"mtix3aux11记录"泵源"严重程度"记录器"一般严重程度"等级eec5ers8"记录"+0x2f):未定义对“boost::log::v2s\u mt\u posix::aux::stream\u provider::allocate\u component(boost::log::v2s\u mt\u posix::record&)”的引用
测试。cpp:(.text. boost3log12v2s"mt"posix3aux11记录"泵源"严重程度"记录器"一般严重程度"等级eec2ers8"RNS1"记录["ZN5boost3log12v2s"mtix3aux11记录"泵源"严重程度"记录器"一般严重程度"等级eec5ers8"记录"+0x3c):对“boost::log::v2s\u mt\u posix::aux::unhandled\u exception\u count()”的未定义引用
/tmp/ccDUZ2gm.o:在函数'boost::log::v2s\u mt\u posix::aux::record\u pump::auto\u release::~auto\u release()':
测试.cpp:(.text. ZN5boost3log12v2s\u mt\u posix3aux11记录泵1\u源严重性\u记录器\u mtINS1\u琐碎性\u级别ee12自动释放2ev[ ZN5boost3log12v2s\u mtu posix3aux11记录泵1\u源严重性\u记录器\u mtINS1\u琐碎性\u级别ee12自动释放5ev]+0x17):对“boost::log::v2s\u mt\u posix::aux::stream\u provider::release\u component(boost::log::v2s\u mt\u posix::aux::stream\u provider::stream\u component*)的未定义引用
/tmp/ccDUZ2gm.o:在函数“boost::log::v2s\u mt\u posix::sources::aux::severity\u level::set\u value(boost::log::v2s\u mt\u posix::triple::severity\u level)”中:
test.cpp:(.text.)
/tmp/ccDUZ2gm.o:在函数“boost::log::v2s\u mt\u posix::record boost::log::v2s\u mt\u posix::sources::basic_logger::open_record_unlocked(boost::parameter::aux::taged_argument const&)”中:
test.cpp:(.text.)_[ZN5boost3log12v2s\u mt\u posix7源12基本日志2\u严重性\u记录器1\u mtINS1\u普通14严重性\u级别2\u多线程\u模型1\u 3ux14轻\u rw\u Mutexee20打开\u记录\u 9参数3 ux15标记的\u参数1\u 8关键字3 Severityeks6\u eens1\u 6recordERKT\u 0x3e]:未定义的boost::log\u open\u posu记录参考(boost::log::v2s\u mt\u posix::attribute\u set const&)
/tmp/ccDUZ2gm.o:在函数“boost::log::v2s\u mt\u posix::sources::basic\u logger::push\u record\u unlocked(boost::rv&)”中:
test.cpp:(.text.\u ZN5boost3log12v2s\u mt\u posix7源12基本日志2\u严重性\u记录器1\u一般严重性\u级别ENS2\u多线程\u模型1\u 3ux14轻量级\u rw\u互斥执行20推送\u记录\u 2解除锁定\u 2记录[\u ZN5boost3log12v2s\u mt\u posix7sources12basic\u loggerIcNS2\u 18severity\u logger\u mtINS1\u 7leveleens2\u 18multi\u thread\u modelINS1\u 3ux14light\u rw\u mutexeee20push\u records\u 2rvines1\u 6recordEEE]+0x47]:对“boost::log::v2s\u mt\u posix::core::push\u record\u move”(boost::log::v2s::v2s\u mt\posix)的引用未定义
collect2:错误:ld返回了1个退出状态
test.cpp:(.text+0x29): undefined reference to `boost::log::v2s_mt_posix::trivial::logger::get()'
test.cpp:(.text+0x70): undefined reference to `boost::log::v2s_mt_posix::trivial::logger::get()'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::record::reset()':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix6record5resetEv[_ZN5boost3log12v2s_mt_posix6record5resetEv]+0x23): undefined reference to `boost::log::v2s_mt_posix::record_view::public_data::destroy(boost::log::v2s_mt_posix::record_view::public_data const*)'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::record boost::log::v2s_mt_posix::sources::basic_composite_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex>, boost::log::v2s_mt_posix::sources::features<boost::log::v2s_mt_posix::sources::severity<boost::log::v2s_mt_posix::trivial::severity_level>, void, void, void, void, void, void, void, void, void> >::open_record<boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> >(boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> const&)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix7sources22basic_composite_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEENS2_8featuresINS2_8severityIS6_EEvvvvvvvvvEEE11open_recordINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_[_ZN5boost3log12v2s_mt_posix7sources22basic_composite_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEENS2_8featuresINS2_8severityIS6_EEvvvvvvvvvEEE11open_recordINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_]+0x2d): undefined reference to `boost::log::v2s_mt_posix::core::get_logging_enabled() const'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level> >::~record_pump()':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEED2Ev[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEED5Ev]+0x3c): undefined reference to `boost::log::v2s_mt_posix::aux::unhandled_exception_count()'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level> >::record_pump(boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>&, boost::log::v2s_mt_posix::record&)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC2ERS8_RNS1_6recordE[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC5ERS8_RNS1_6recordE]+0x2f): undefined reference to `boost::log::v2s_mt_posix::aux::stream_provider<char>::allocate_compound(boost::log::v2s_mt_posix::record&)'
test.cpp:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC2ERS8_RNS1_6recordE[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEEC5ERS8_RNS1_6recordE]+0x3c): undefined reference to `boost::log::v2s_mt_posix::aux::unhandled_exception_count()'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::aux::record_pump<boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level> >::auto_release::~auto_release()':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEE12auto_releaseD2Ev[_ZN5boost3log12v2s_mt_posix3aux11record_pumpINS1_7sources18severity_logger_mtINS1_7trivial14severity_levelEEEE12auto_releaseD5Ev]+0x17): undefined reference to `boost::log::v2s_mt_posix::aux::stream_provider<char>::release_compound(boost::log::v2s_mt_posix::aux::stream_provider<char>::stream_compound*)'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::sources::aux::severity_level<boost::log::v2s_mt_posix::trivial::severity_level>::set_value(boost::log::v2s_mt_posix::trivial::severity_level)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix7sources3aux14severity_levelINS1_7trivial14severity_levelEE9set_valueES6_[_ZN5boost3log12v2s_mt_posix7sources3aux14severity_levelINS1_7trivial14severity_levelEE9set_valueES6_]+0x10): undefined reference to `boost::log::v2s_mt_posix::sources::aux::get_severity_level()'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::record boost::log::v2s_mt_posix::sources::basic_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex> >::open_record_unlocked<boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> >(boost::parameter::aux::tagged_argument<boost::log::v2s_mt_posix::keywords::tag::severity, boost::log::v2s_mt_posix::trivial::severity_level const> const&)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20open_record_unlockedINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_[_ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20open_record_unlockedINS_9parameter3aux15tagged_argumentINS1_8keywords3tag8severityEKS6_EEEENS1_6recordERKT_]+0x3e): undefined reference to `boost::log::v2s_mt_posix::core::open_record(boost::log::v2s_mt_posix::attribute_set const&)'
/tmp/ccDUZ2gm.o: In function `boost::log::v2s_mt_posix::sources::basic_logger<char, boost::log::v2s_mt_posix::sources::severity_logger_mt<boost::log::v2s_mt_posix::trivial::severity_level>, boost::log::v2s_mt_posix::sources::multi_thread_model<boost::log::v2s_mt_posix::aux::light_rw_mutex> >::push_record_unlocked(boost::rv<boost::log::v2s_mt_posix::record>&)':
test.cpp:(.text._ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20push_record_unlockedERNS_2rvINS1_6recordEEE[_ZN5boost3log12v2s_mt_posix7sources12basic_loggerIcNS2_18severity_logger_mtINS1_7trivial14severity_levelEEENS2_18multi_thread_modelINS1_3aux14light_rw_mutexEEEE20push_record_unlockedERNS_2rvINS1_6recordEEE]+0x47): undefined reference to `boost::log::v2s_mt_posix::core::push_record_move(boost::log::v2s_mt_posix::record&)'
collect2: error: ld returned 1 exit status
g++ -DBOOST_LOG_DYN_LINK logging_test.cpp -lboost_log -lpthread