zoukankan      html  css  js  c++  java
  • VS2013下使用log4cplus

    原文:http://blog.csdn.net/qq_35850668/article/details/52522932

    最近工作需要,需要使用log库来完善日志类记录,由于之前没什么经验,遇到了很多困难。

    工作环境: X64+VS2013社区版

    log4cplus官网下载路径:https://sourceforge.net/projects/log4cplus/files/log4cplus-stable/1.1.3/ 

    具体经历如下:

    1:下载了最新版的log4cplus-1.2.0.7源代码。进入...log4cplus-1.2.0msvc10文件夹,点击sln后,默认使用了VS2010来打开项目了(本人恰好安装了VS2010),悲剧就开始了。


    2:编译log4cplus和log4cplusS两个项目之后,很轻易就编译OK了,心情棒棒哒。

    生成了log4cplusD.dll和log4cplusD.lib以及log4cplusSD.lib,你可以选择前两个配套使用,也可以选择最后一个lib单独使用。于是我把这三个库+include文件夹拷进了我自己的项目(VS2013)。我选择的前两个库一起配套使用。

    3:把库关联好,把log4cplusD.dll添加到exe生成目录后,编译,出现各种无法解析的外部log4cplus函数。检查include包含和库包含目录,检查头文件,检查依赖库和exe同目录的dll,都没有问题啊,

    百度很久后才知道原来是log4cplus dll项目字符集跟当前项目字符集不一致。我的项目当前字符集是Unicode,而log4cplus是默认的多字节字符集,改为unicode后编译成功。


    4:在自己代码中封装好log4cplus类后:



    编译链接运行后,发现一调用log4cplus自带库函数,整个程序就崩溃。后来偶然把项目的平台工具集改成v100后,程序正常。


    5:然而VS2013平台环境不能因为log4cplus不适应而更改,所以只能重新用VS2013来编译log4cplus,再把生成的库放入工程后,一切正常,没有出现奔溃,也能够正常生成log。可是在程序main函数return后,出现exit()错误,程序崩溃。

    6:查找很多资料,都没能解决问题,后来看到这篇客:http://www.cnblogs.com/swarmbees/p/5621619.html,更加心如死灰,于是就放弃了,准备自己开刀写个日志类。

    7:当我写完后,老大看到了,对我说有现成的log4cplus库,要我去使用这个库。我于是又回到上面的问题。

    8:偶然看到一篇文章http://blog.csdn.net/shaozhenged/article/details/51866186,发现走过的路都白走了,博主说他使用的是log4cplusSD.lib库,而不是log4cplusD.dll和log4cplusD.lib配对,我把项目库也改成了log4cplusSD.lib后,问题就这样解决了。

  • 相关阅读:
    js中属性节点的应用
    改变属性的值的方法
    获取所有节点的一些方法的属性(有待改善)
    JS中修改属性
    获取节点的几种小案例
    在页面上点击按钮,出现弹出框
    SelectionSort,选择排序
    BubbleSort冒泡排序
    混合app
    使用(Unicode字符)让inline水平元素换行
  • 原文地址:https://www.cnblogs.com/lizhigang/p/7306893.html
Copyright © 2011-2022 走看看