log4cpp的安装(vs/visual studio版)

文章详细介绍了如何在VisualStudio环境下安装和配置log4cpp,包括下载源码、编译生成lib文件、设置include和lib路径,以及编写和测试日志记录代码。

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

log4cpp安装

下载源

log4cpp

visual studio安装方法

  1. 将下载好的压缩包解压缩后得到下列目录(解压缩的文件夹最好放C盘,不然在编译阶段往往会出现链接不上的问题)
    在这里插入图片描述
    找到mscv10文件夹内的mscv10.sln项目文件,右键log4cppLIB源文件,生成(编译器一定要选WIN32)
    在这里插入图片描述
  2. 回到mscv10文件夹中,此时有了release或debug版本,将release文件夹中的log4cppLIB.lib复制,将debug文件夹中的log4cppD.lib复制,并把log4cpp目录下的inclue文件夹复制(建议两个版本都安装一遍)
  3. 在一个方便的路径下粘贴三个文件,两个lib文件放在lib文件夹中,include文件夹放在当前目录下
    在这里插入图片描述
    在这里插入图片描述
  4. 此时路径已经设置好了,在vs新建一个项目,专门用于写log4cpp相关的代码,配置环境(编译器一定要选WIN32,和前面生成的文件匹配)
  5. 在项目属性下找到VC++目录选项,修改包含目录和库目录(注意要先点继承父级目录后再添加路径),包含目录添加include路径,库目录添加lib路径
    .在这里插入图片描述
  6. 在链接器选项下的输入选项中,修改附加依赖项(也要注意保留父级路径),如果当前编辑器是Release就添加log4cppLIB.lib,如果是Debug就添加log4cppD.lib
  7. 此时大概已经配置好了环境
    测试代码
//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;

}

如果没有报错就说明配置成功,如果还有报错建议评论问一下我

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

涅槃豆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值