log4cpp简介与安装

By AverageJoeWang
 标签:

一.log4cpp简介

log4cpp是一个开源的C++类库,它提供了在C++程序中使用日志和跟踪调试的功能。使用log4cpp,可以很便利地将日志或者跟踪调试信息写入字符流、内存字符串队列、文件、回滚文件、调试器、Windows日志、syslog和远程syslog服务器中。Log4cpp是个基于LGPL的开源项目,移植自Java的日志处理跟踪项目log4j,并保持了API上的一致。其类似的支持库还包括Java(log4j),C++(log4cpp、log4cplus),C(log4c),Python(log4p)等。

log4cpp有如下优点:

  • 提供了可扩展的多种日志记录方式;
  • 提供了NDC(嵌套诊断上下文),可用于多线程、多场景的跟踪调试;
  • 提供了完整的日志动态优先级控制,可随时调整需要记录的日志优先级;
  • 可通过配置文件完成所有配置并动态加载;
  • 性能优秀,内存占用小,经过编译后的log4cpp.dll大小仅有160kb;
  • 代码级的平台无关性,Log4cpp源代码经过编译后,适用于大多数主流的操作系统和开发工具;
  • 概念清晰,学习和使用方便,熟练程序员一天之内即可很好地应用log4cpp进行开发。

二.log4cpp安装,配置,运行

安装环境为linux平台

2.1.下载

点击下载log4cpp-1.1.1.tar.gz

2.2.安装:

以root权限打开终端

# cd /usr/local
# tar zxvf log4cpp-1.1.1.tar.gz 

# cd /usr/local/log4cpp/
# ./configure
# make
# make check
# make install
#这里已经安装成功.

2.3.说明

  • 默认lib库路径是 : /usr/local/lib/

  • 默认头文件的位置: /usr/local/include/log4cpp

2.4.编译

使用log4cpp库的CPP文件时,要加上库文件,如下示例

# g++ log4test.cpp -llog4cpp -lpthread
#才能顺利的编译通过

2.5.运行

如若提示缺少log4cpp库文件,表示找不到log4cpp的动态库,需要进行以下设置

以管理员身份登录终端,然后执行以下操作:

#a.
# vim /etc/ld.so.conf

#b. 在打开的文件末尾添加动态库log4cpp的路径(这里是/usr/local/lib)
# include /usr/local/lib
#然后保存退出;

#执行命令ldconfig使设置生效即可。
#c.
# ldcondfig