安装以及编译:
1.到官网下载安装包:https://sourceforge.net/projects/log4cplus/
2.xz -d log4cplus-2.0.6.tar.xz 获取.tar文件后,解压:tar -xvf log4cplus-2.0.6.tar
3.进入解压后的目录
4 ./configure 表示默认lib路径是/usr/local/lib 头文件位置:/usr/local/include/log4cplus
5 make编译;make install
使用:
源文件中加入相关依赖:
#include “log4cplus/logger.h”
#include “log4cplus/consoleappender.h”
#include “log4cplus/loglevel.h”
#include “log4cplus/loggingmacros.h”
#include “log4cplus/initializer.h”
注意需要链接到静态库或者动态库
cmakelists加入:
link_directories("/usr/local/lib" “/usr/local/include”)
add_executable(test logT.cpp)
target_link_libraries(test -llog4cplus)
表示链接动态库
一个测试代码:
#include
#include "log4cplus/logger.h"
#include "log4cplus/consoleappender.h"
#include "log4cplus/loglevel.h"
#include "log4cplus/loggingmacros.h"
#include "log4cplus/initializer.h"
using namespace std;
using namespace log4cplus;
int main(int argc, char **argv)
{
/* 1、先进行log4cplus的实例化 */
log4cplus::Initializer initializer;
/* 2、实例化一个输出介质的appender对象,这里使用的是控制台console */
SharedAppenderPtr append_1(new ConsoleAppender());
append_1->setName(LOG4CPLUS_TEXT("append_1"));
/* 4、实例化一个日志输出的logger对象,并调用getInstance获得示例 */
Logger logger_1 = Logger::getInstance(LOG4CPLUS_TEXT("test1"));
/* 5、将appender与logger绑定 */
logger_1.addAppender(append_1);
/* 7、输出不同等级的log */
LOG4CPLUS_TRACE(logger_1, LOG4CPLUS_TEXT("Hello, log4cplus!"));
LOG4CPLUS_DEBUG(logger_1, LOG4CPLUS_TEXT("Hello, log4cplus!"));
LOG4CPLUS_INFO (logger_1, LOG4CPLUS_TEXT("Hello, log4cplus!"));
LOG4CPLUS_WARN (logger_1, LOG4CPLUS_TEXT("Hello, log4cplus!"));
LOG4CPLUS_ERROR(logger_1, LOG4CPLUS_TEXT("Hello, log4cplus!"));
LOG4CPLUS_FATAL(logger_1, LOG4CPLUS_TEXT("Hello, log4cplus!"));
return 0;
}