转载:error LNK2019: 无法解析的外部符号 __imp__bson_free,函数 _main 中引用了该符号

vc++引用外部dll时报error LNK2019: 无法解析的外部符号

https://www.cnblogs.com/zhjh256/p/6364777.html

初学cpp,因为之前装linux下各种软件的时候,知道LD_LIBRARY_PATH可以指定动态库的目录。今天在vc集成log4cpp的时候,编译main时报error LNK2019: 无法解析的外部符号,已经在

 

包含了目标dll的目录,经搜索帖子http://bbs.csdn.net/topics/310055467后得知在

添加目标dll或lib即可。那么它实际存储在那个配置文件中呢,项目的XXX.vcxproj文件,如下:

就当java的eclipse和IDEA之于c++的vs和clion吧。

补充,如果上述全部改了,还有这个问题的话,就要检查下引入的lib和目标项目的平台架构(32/64)是否相同。一般三方库都会同时提供x86/64或者源码。

比如对于pthread:

项目平台可通过右击属性看到,如下:

最后,windows一般搜索的dll目录为System32或者SystemWOW目录、PATH环境变量指定、以及当前目录。具体可通过如下方式看到完整的搜索目录:

 

原文地址:https://www.cnblogs.com/liweikuan/p/14483935.html