首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误“对'log4cplus::Logger::operator=(log4cplus::Logger&&)'”的未定义引用“

错误“对'log4cplus::Logger::operator=(log4cplus::Logger&&)'”的未定义引用“
EN

Stack Overflow用户
提问于 2015-09-21 06:21:44
回答 2查看 2.8K关注 0票数 2

现在,当我想编译一个需要ld liblog4cplus.a的项目时出现了一个问题,当我使用-std=c++11编译选项时,会出现一个错误

对'log4cplus::Logger::operator=(log4cplus::Logger&&)‘的未定义引用

但是整个项目需要选项-std=c++11

那么我该如何解决这个问题呢?

PS :在Ubuntu 12.04上编译,其中gcc version:4.8.2liblog4cplus version:1.1.3

EN

回答 2

Stack Overflow用户

发布于 2015-09-22 05:08:16

无论是否使用log4cplus标志,您都必须编译代码和-std=c++11库。不支持混合编译。

票数 1
EN

Stack Overflow用户

发布于 2015-10-21 10:46:25

我的解决方案:

代码语言:javascript
复制
 `log4cplus::Logger g_piano_logger;     auto logger = log4cplus::Logger::getInstance(...     g_logger = logger;` 

或重建log4cplus

注log4cplus-1.1.1/include/log4cplus/logger.h中的LOG4CPLUS_HAVE_RVALUE_REFS

代码语言:javascript
复制
         `Logger& operator=(const Logger& rhs);     #if defined (LOG4CPLUS_HAVE_RVALUE_REFS)             Logger (Logger && rhs);             Logger & operator = (Logger && rhs);     #endif`
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32688568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档