- log4cpp安装
- 下载源
- visual studio安装方法
 
log4cpp安装
下载源
log4cpp
visual studio安装方法
- 将下载好的压缩包解压缩后得到下列目录(解压缩的文件夹最好放C盘,不然在编译阶段往往会出现链接不上的问题)
  
 找到mscv10文件夹内的mscv10.sln项目文件,右键log4cppLIB源文件,生成(编译器一定要选WIN32)
  
- 回到mscv10文件夹中,此时有了release或debug版本,将release文件夹中的log4cppLIB.lib复制,将debug文件夹中的log4cppD.lib复制,并把log4cpp目录下的inclue文件夹复制(建议两个版本都安装一遍)
- 在一个方便的路径下粘贴三个文件,两个lib文件放在lib文件夹中,include文件夹放在当前目录下
  
  
- 此时路径已经设置好了,在vs新建一个项目,专门用于写log4cpp相关的代码,配置环境(编译器一定要选WIN32,和前面生成的文件匹配)
- 在项目属性下找到VC++目录选项,修改包含目录和库目录(注意要先点继承父级目录后再添加路径),包含目录添加include路径,库目录添加lib路径
 . 
- 在链接器选项下的输入选项中,修改附加依赖项(也要注意保留父级路径),如果当前编辑器是Release就添加log4cppLIB.lib,如果是Debug就添加log4cppD.lib
- 此时大概已经配置好了环境
 测试代码
//FileAppenderExam:
#include <iostream>
#include "log4cpp/Category.hh"
#include "log4cpp/Appender.hh"
#include "log4cpp/FileAppender.hh"
#include "log4cpp/Priority.hh"
#include "log4cpp/PatternLayout.hh"
#include "log4cpp/RollingFileAppender.hh"
using namespace std;
int main(int argc, char* argv[])
{
    log4cpp::PatternLayout* pLayout1 = new log4cpp::PatternLayout();//创建一个Layout;
    pLayout1->setConversionPattern("%d: %p %c %x: %m%n");//指定布局格式;
    log4cpp::PatternLayout* pLayout2 = new log4cpp::PatternLayout();
    pLayout2->setConversionPattern("%d: %p %c %x: %m%n");
    log4cpp::Appender* fileAppender = new log4cpp::FileAppender("fileAppender", "wxb.log");//创建一个Appender;
    fileAppender->setLayout(pLayout1);//将指定的Layout添加到Appender;
    log4cpp::RollingFileAppender* rollfileAppender = new log4cpp::RollingFileAppender(
        "rollfileAppender", "rollwxb.log", 5 * 1024, 1);
    rollfileAppender->setLayout(pLayout2);
    log4cpp::Category& root = log4cpp::Category::getRoot().getInstance("RootName");//从系统中得到Category的根;
    root.addAppender(fileAppender);//将Appender添加到Category;
    root.addAppender(rollfileAppender);
    root.setPriority(log4cpp::Priority::DEBUG);//设置Category的优先级;
    //开始记录日志;
    for (int i = 0; i < 100; i++)
    {
        string strError;
        ostringstream oss;
        oss << i << ":Root Error Message!";
        strError = oss.str();
        root.error(strError);
    }
    log4cpp::Category::shutdown();//关闭Category;
    return 0;
}
如果没有报错就说明配置成功,如果还有报错建议评论问一下我


















