id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 12303,Linker error with boost.locale and operator%,andreas.kuechler@…,Artyom Beilis,"Hi, I recently updated to boost 1.61 with self-compiled libraries using MSVC2015 with the following build settings {{{ .\bootstrap .\b2 architecture=x86 toolset=msvc -j 12 --layout=tagged }}} The libraries are properly compiled but when I link with my application I get the following errors: (BOOST_AUTO_LINK_TAGGED is defined globally) {{{ libboost_locale-mt-gd.lib(date_time.obj) : error LNK2019: unresolved external symbol ""class boost::system::error_category const & __cdecl boost::system::system_category(void)"" (?system_category@system@boost@@YAAEBVerror_category@12@XZ) referenced in function ""public: __cdecl boost::thread_exception::thread_exception(int,char const *)"" (??0thread_exception@boost@@QEAA@HPEBD@Z) libboost_locale-mt-gd.lib(generator.obj) : error LNK2001: unresolved external symbol ""class boost::system::error_category const & __cdecl boost::system::system_category(void)"" (?system_category@system@boost@@YAAEBVerror_category@12@XZ) libboost_locale-mt-gd.lib(localization_backend.obj) : error LNK2001: unresolved external symbol ""class boost::system::error_category const & __cdecl boost::system::system_category(void)"" (?system_category@system@boost@@YAAEBVerror_category@12@XZ) libboost_locale-mt-gd.lib(lcid.obj) : error LNK2001: unresolved external symbol ""class boost::system::error_category const & __cdecl boost::system::system_category(void)"" (?system_category@system@boost@@YAAEBVerror_category@12@XZ) libboost_locale-mt-gd.lib(date_time.obj) : error LNK2019: unresolved external symbol ""class boost::system::error_category const & __cdecl boost::system::generic_category(void)"" (?generic_category@system@boost@@YAAEBVerror_category@12@XZ) referenced in function ""void __cdecl boost::system::`dynamic initializer for 'errno_ecat''(void)"" (??__Eerrno_ecat@system@boost@@YAXXZ) libboost_locale-mt-gd.lib(generator.obj) : error LNK2001: unresolved external symbol ""class boost::system::error_category const & __cdecl boost::system::generic_category(void)"" (?generic_category@system@boost@@YAAEBVerror_category@12@XZ) libboost_locale-mt-gd.lib(localization_backend.obj) : error LNK2001: unresolved external symbol ""class boost::system::error_category const & __cdecl boost::system::generic_category(void)"" (?generic_category@system@boost@@YAAEBVerror_category@12@XZ) libboost_locale-mt-gd.lib(lcid.obj) : error LNK2001: unresolved external symbol ""class boost::system::error_category const & __cdecl boost::system::generic_category(void)"" (?generic_category@system@boost@@YAAEBVerror_category@12@XZ) debug\uniform_initialization.exe : fatal error LNK1120: 2 unresolved externals }}} I got a minimal working example {{{ #include int main(int argc, char *argv[]) { (boost::locale::format(boost::locale::translate(""Hello, {1}"")) % ""World"").str(); return 0; } }}} The linker error occurs only if the operator% is used, format and translate alone compile and link fine. The linker error disappear as soon as I add {{{#include }}}",Bugs,closed,To Be Determined,locale,Boost 1.61.0,Problem,wontfix,,