无法了解链接器在抱怨什么

时间:2018-11-10 04:20:46

标签: c++ visual-studio boost linker boost-logging

在编译使用Boost Logging库的项目时,出现以下链接器错误。

  

LNK2001未解析的外部符号“ public:静态类   boost :: log :: v2s_mt_nt6 :: sources :: severity_logger_mt __cdecl   my_logger :: construct_logger(void)”   (?construct_logger @ my_logger @@ SA?AV?$ severity_logger_mt @ W4severity_level @ trivial @ v2s_mt_nt6 @ log @ boost @@@ sources @ v2s_mt_nt6 @ log @ boost @@ XZ)

我不知道如何使用错误的函数名读取此错误消息。谁能以人类可读的方式告诉我它找不到什么功能?

1 个答案:

答案 0 :(得分:0)

谷歌搜索“提升日志未解决的外部符号”会导致描述BOOST_LOG_DYN_LINK的{​​{3}}(第一个突出显示的匹配)。

这也是SO上最常见的答案:https://www.boost.org/doc/libs/1_59_0/libs/log/doc/html/log/rationale/namespace_mangling.html

但是,ABI问题可以发挥作用,请参见例如https://stackoverflow.com/search?tab=votes&q=%5bboost-log%5d%20linker