1、编译输出bug如下:
1>libboost_log_setup-vc140-mt-gd-1_61.lib(matches_relation_factory.obj) : error LNK2019: 无法解析的外部符号 "private: class boost::basic_regex<char,struct boost::regex_traits<char,class boost::w32_regex_traits<char> > > & __thiscall boost::basic_regex<char,struct boost::regex_traits<char,class boost::w32_regex_traits<char> > >::do_assign(char const *,char const *,unsigned int)" (?do_assign@?$basic_regex@DU?$regex_traits@DV?$w32_regex_traits@D@boost@@@boost@@@boost@@AAEAAV12@PBD0I@Z),该符号在函数 "public: class boost::basic_regex<char,struct boost::regex_traits<char,class boost::w32_regex_traits<char> > > & __thiscall boost::basic_regex<char,struct boost::regex_traits<char,class boost::w32_regex_traits<char> > >::assign(char const *,char const *,unsigned int)" (?assign@?$basic_regex@DU?$regex_traits@DV?$w32_regex_traits@D@boost@@@boost@@@boost@@QAEAAV12@PBD0I@Z) 中被引用
解决:
添加#include <boost/regex.hpp>即可。
2、编译输出bug如下:
1>libboost_log-vc140-mt-gd-1_61.lib(event_log_backend.obj) : error LNK2019: 无法解析的外部符号 _EnumProcessModules@16,该符号在函数 "void __cdecl boost::log::v2s_mt_nt6::sinks::`anonymous namespace'::init_self_module_handle(struct HINSTANCE__ * &)" (?init_self_module_handle@?A0x93af6d04@sinks@v2s_mt_nt6@log@boost@@YAXAAPAUHINSTANCE__@@@Z) 中被引用
1>libboost_log-vc140-mt-gd-1_61.lib(event_log_backend.obj) : error LNK2019: 无法解析的外部符号 _GetModuleInformation@16,该符号在函数 "void __cdecl boost::log::v2s_mt_nt6::sinks::`anonymous namespace'::init_self_module_handle(struct HINSTANCE__ * &)" (?init_self_module_handle@?A0x93af6d04@sinks@v2s_mt_nt6@log@boost@@YAXAAPAUHINSTANCE__@@@Z) 中被引用解决:
网上查均无结果,摸索定位bug为boost::log::init_from_stream导致,查看源码发现使用了#include <psapi.h>头文件,故在编译环境中添加psapi.lib库,编译后正常