Не могу понять, на что жалуется компоновщик - PullRequest
0 голосов
/ 10 ноября 2018

При компиляции моего проекта, использующего библиотеку логирования буста, я получаю следующую ошибку компоновщика.

LNK2001 неразрешенный внешний символ "public: static class boost :: log :: v2s_mt_nt6 :: sources :: severity_logger_mt __cdecl my_logger :: construct_logger (аннулируются)» (? Construct_logger @ my_logger @@ SA? AV? $ Severity_logger_mt @ W4severity_level @ тривиальным @ v2s_mt_nt6 @ журнал @ наддува @@@ источники @ v2s_mt_nt6 @ журнал @ импульс @@ XZ)

Я не знаю, как прочитать это сообщение об ошибке с искаженными именами функций. Может кто-нибудь сказать мне понятным человеку, какую функцию он не может найти?

1 Ответ

0 голосов
/ 11 ноября 2018

Поиск в Google «неразрешенный внешний символ повышения журнала» приводит к https://www.boost.org/doc/libs/1_59_0/libs/log/doc/html/log/rationale/namespace_mangling.html (первое выделенное попадание), которое описывает BOOST_LOG_DYN_LINK.

Это, кстати, также самый частый ответ на SO: https://stackoverflow.com/search?tab=votes&q=%5bboost-log%5d%20linker

Однако проблемы с ABI могут сыграть свою роль, см., Например, Неразрешенный внешний при использовании лог-буста

...