vs2010 log4cplus下载、编译、集成、报错及调试

最近打算搞一个c++的日志,网上有log4cpp、log4cplus、log4cxx,开始以为是同一个家伙,最后才知道原来是三家的东西,我擦。。。

最后确定使用log4cplus,从网上也找了一些资料,但是开始总是不是我想要的东西,最后看到一个比较有建设性的博客,参考人家的次序一步步坐了下来,但是最后我依然有问题,各种找原因,最后终于能够写出日志了,所以把这个受折磨的过程记录下来,以备以后使用


第一步,下载log4cplus,本文使用的是1.1.3,路径为log4cplus 1.1.3

第二步,编译。首先先打开工程中的msvc10,里面有个熟悉的.sln,双击打开,会看到如图所示的内容

                开始我是把这五个工程一个一个的编译过去,其实最后发现,只需要编译log4cplus和log4cplusS就行,我们最终的目的是要得到这三个文件log4cplusD.dll、log4cplusD.lib和log4cplusSD.lib。其中前两个需要配合使用,第三个就可以独立使用了。


第三步,添加h和lib。为了省事起见,可以把log4cplus-1.1.3-rc3\include路径下的log4cplus都拷贝到vs2010的安装目录的VC\include下,如图

                

             把上面提到的两个lib拷贝到vs2010下的vc/lib下,把上面提到的一个dll,拷贝到vc/bin下,示例图效果类似上图,就不附图了

             或者为了后续的扩展方便,可以把对应的这些头文件和lib、dll拷贝到工程中,具体路径自己随意,但是只要保障能够找到对应内容就行了,如果实在没把握,可以参考小弟我的这个样子,先放到安装目录下,至少我可以确保你按我说的做,肯定能看到效果,扯远了,,,,


第四步:建一个工程,只需要有一个cpp文件就够了,但是需要在“属性--链接器--输入--附加依赖项--编辑”中添加刚才说的lib文件,如图


图上使用的是log4cplusSD.lib,这个可以自己单练的,如果使用了log4cplusD.lib的话,它得和log4cplusD.dll一起干活儿才行

然后说一下代码,源码见下

#include "log4cplus\logger.h"
#include "log4cplus\fileappender.h"
#include "log4cplus\configurator.h"
#include <log4cplus/loggingmacros.h>

#include <iomanip>  
  
using namespace log4cplus;  
  
int main()  
{  
    SharedAppenderPtr append(new FileAppender("Test.log"));
	append->setName("file log test");
//		BasicConfigurator config;  
//    config.configure();  
  
    Logger logger = Logger::getInstance("test.subtest_of_filelog!");
	logger.addAppender(append);
//    LOG4CPLUS_WARN(logger, "Hello, World!");  
//    getchar();  

	LOG4CPLUS_DEBUG(logger,"Entering log  $#$  # End line#");

    return 0;  
}  


其中的第四行,在开始的时候我是没有添加的,但是这样在执行的时候,一直会报一个“LOG4CPLUS_DEBUG找不到标示符的错误”,郁闷了半天,最终从网上看到一个帖子,那位大拿建议添加第四行的内容,顺利通过了。。。。   帖子见右侧  解决问题的大拿帖子


到这儿为止,如果你按照我的这个过程走一遍的话,至少你能看到最终输出的日志结果了,如果再想进一步研究,网上例子很多,但是我觉得新手的话,第一个demo还是很重要的,所以才有这个帖子的诞生,不足之处,欢迎诸位指正


另:一个给我很大帮助的帖子,大家可以参考下  很有帮助的一个帖子 很有帮助的一个帖子

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值