mingw版本log4cplus库Qt中编译错误:undefined reference to log4cplus::detail::macro_forced_log ......

本文介绍了一种在Qt中使用mingw编译log4cplus库时遇到的编译错误,并详细解释了解决过程,最终确定为.pro文件中DEFINES-=UNICODE设置导致的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Qt中使用mingw版本的log4cplus库时出现编译错误如下:

undefined reference to `log4cplus::detail::macro_forced_log(log4cplus::Logger const&, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'

因为项目依赖了多个库,.pro文件中配置了CONFIG += c++11 c++14,开始以为是c++11和c++14同时出现的问题,经过多次尝试发现该配置无关。

于是新建一个工程,仅仅依赖log4cplus这一个库,编译通过,运行正常。

仔细对比两个工程的.pro文件,发现原工程的.pro文件中有 DEFINES -= UNICODE 的定义,加#注释掉以后编译通过,运行正常。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值