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

超、凢脫俗 2022-08-06 00:17 381阅读 0赞

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

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

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

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

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

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

  1. ![Center 1][]
  2. 把上面提到的两个lib拷贝到vs2010下的vc/lib下,把上面提到的一个dll,拷贝到vc/bin下,示例图效果类似上图,就不附图了
  3. 或者为了后续的扩展方便,可以把对应的这些头文件和libdll拷贝到工程中,具体路径自己随意,但是只要保障能够找到对应内容就行了,如果实在没把握,可以参考小弟我的这个样子,先放到安装目录下,至少我可以确保你按我说的做,肯定能看到效果,扯远了,,,,

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

Center 2

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

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

  1. #include "log4cplus\logger.h"
  2. #include "log4cplus\fileappender.h"
  3. #include "log4cplus\configurator.h"
  4. #include <log4cplus/loggingmacros.h>
  5. #include <iomanip>
  6. using namespace log4cplus;
  7. int main()
  8. {
  9. SharedAppenderPtr append(new FileAppender("Test.log"));
  10. append->setName("file log test");
  11. // BasicConfigurator config;
  12. // config.configure();
  13. Logger logger = Logger::getInstance("test.subtest_of_filelog!");
  14. logger.addAppender(append);
  15. // LOG4CPLUS_WARN(logger, "Hello, World!");
  16. // getchar();
  17. LOG4CPLUS_DEBUG(logger,"Entering log $#$ # End line#");
  18. return 0;
  19. }

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

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

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

发表评论

表情:
评论列表 (有 0 条评论,381人围观)

还没有评论,来说两句吧...

相关阅读

    相关 c++编译使用log4cplus

    > 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一、log4cplus是什么? 二、使用步骤 1.下

    相关 log4cplus基本使用方法

    说起日志系统,不得不提大名鼎鼎的Log4j,特别是使用Java的人们,可以说是无人不知无人不晓无人不用。Log4j以其简单的使用方式(引入一个jar包,一行代码即可调用),灵活