在VS2012中使用时出现log4cplus链路错误
log4cplus link errors when used in VS2012
我已经在VS2012中下载并编译了log4cplus。编译很好(调试和发布)我尝试在我的代码中使用它,但我收到 3 个链接错误,我尝试过的任何内容都没有删除它们。我正在使用 log4cplus 项目中的相同包含,以及我编译的库(尝试了所有 3 个......调试版本和 log4cplusS.lib
我仍然得到这些:
错误 LNK2019: 未解析的外部符号"__declspec(DLL导入) 类 std::basic_ostringstream,class std::分配器> & __cdecl log4cplus::d etail::get_macro_body_oss(void)" (_imp?get_macro_body_oss@detail@log4cplus@@YAAAV?$basic_ostringstream@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@XZ) 在函数"int __cdecl Prepare(class) 中引用 标准::basic_string,类 标准::分配器> &,类 标准::basic_string,类 标准::分配器> &,类 标准::basic_string,类 std::分配器> &,int *,int *,int *)" (?Prepare@@YAHAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00PAH11@Z)
错误 LNK2019: 未解析的外部符号"__declspec(DLL导入) 公共:静态类 log4cplus::记录器__cdecl log4cplus::Logger::getInstance(class std::basic_string,class std::allocator> const &)" (_imp?getInstance@Logger@log4cplus@@SA?AV12@ABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z) 在函数"int __cdecl Prepare(class) 中引用 标准::basic_string,类 标准::分配器> &,类 标准::basic_string,类 标准::分配器> &,类 标准::basic_string,类 std::分配器> &,int *,int *,int *)" (?Prepare@@YAHAAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@00PAH11@Z)
怎么了?
我的代码很简单,在我的dll cpp中:
在我添加的 cpp 顶部
static Logger logger;
在我添加的函数之一中:
logger = Logger::getInstance(LOG4CPLUS_TEXT("MyDLL"));
LOG4CPLUS_INFO(logger, LOG4CPLUS_TEXT("Prepare Starts"));
很可能您已经使用 Release
配置编译了 log4cplus。您将需要使用Release_Unicode
(与Debug
配置类似)。
- vscode g++链路故障:体系结构x86_64的未定义符号
- GLFW DDS 加载函数的 OpenGL 链路错误
- QBS 为静态链路 MSVC 创建静态库
- VS 链路错误描述中的"@@YAHXZ"是什么意思?
- 数据结构:多(A)对多(B)关系,每个链路也有自己的数据(C)
- 在 OpenGL 计划链路状态检查期间"No definition of main in vertex shader"
- 提升单元测试链路错误
- C++ shared_ptr基于单调导致链路错误的原因
- 为什么Typedef结构会产生链路故障
- 链路寄存器 (LR) 是否受内联函数或裸函数的影响
- 如何查找 IP 地址是否为链路本地地址
- C 程序检测物理链路状态和数据包丢失
- 如何处理系统链路控制的NM_CLICK
- MPG123 链路错误"_read"和"_lseek"
- 在VS2012中使用时出现log4cplus链路错误
- C、 所有平台中进程的C++CPU使用率和内存使用率+当前时间的可用网络下行链路带宽
- Parasoft c++测试链路单元测试错误
- 在ns3中的两个节点之间创建无线链路
- 设置链路顺序和LINK_INTERFACE_MULTIPLICITY
- Boost Asio GCC链路错误