C++第三方日志庫log4cplus的安裝與使用配置教程

一、log4cplus介紹

log4cplus是C++編寫的開源的日志系統,前身是java編寫的log4j系統,受Apache Software License保護,作者是Tad E. Smith。

log4cplus具有線程安全、靈活、以及多粒度控制的特點,通過將日志劃分優先級使其可以面向程序調試、運行、測試、和維護等全生命周期。你可以選擇將日志輸出到屏幕、文件、NT event log、甚至是遠程服務器;通過指定策略對日志進行定期備份等等。

二、log4cplus下載

下載鏈接:https://sourceforge.net/projects/log4cplus/files/log4cplus-stable/2.0.7/

最新穩定版2.0.7(2022.2.21)

官方文檔:https://sourceforge.net/p/log4cplus/wiki/Home/

三、log4cplus配置

3.1 打開解決方案

打開Visual Studio,進入 log4cplus-2.x\msvc14目錄下,運行log4cplus.sln解決方案。

在這裡插入圖片描述

3.2 進行相應設置

編譯log4cplus需要註意三點:
①解決方案的平臺與目標程序一致,這裡選擇的是x64;
②版本也要與目標程序一致,這裡選擇的是release版本;
③屬性裡面的字符集和目標程序一致;

在這裡插入圖片描述

選擇log4cplus項目,右鍵——>屬性——>配置屬性——>常規——>字符集,選擇Unicode字符集,如下圖所示。(log4cplus默認使用多字節字符集,而VS新建項目默認使用Unicode字符集,如果不修改此處,則後面新建項目使用生成的dll時需要手動修改新建的項目為多字節字符集,否則會報錯,總之兩邊統一用一種即可)

在這裡插入圖片描述

編譯完成後,會在log4cplus-2.x\msvc14\x64\bin.Release文件夾下生成我們需要的log4cplus.lib和log4cplus.dll兩個文件(我編譯的是release版),如下圖所示。

在這裡插入圖片描述

3.3 目標程序的配置

將log4cplus-2.0.x目錄下的include文件夾拷貝到我們的目標程序文件夾中,這裡面是我們需要的頭文件;在目標程序的屬性裡面設置頭文件的包含目錄。

設置lib文件的庫目錄以及將lib文件填入附加依賴項,如下圖所示。

在這裡插入圖片描述

將dll文件放到程序的根目錄:如果運行的是VS放置到和*.vcxproj一個文件夾下,如果運行的是*.exe,則和*.exe放置到一個文件夾下。

在這裡插入圖片描述

右鍵——>屬性——>鏈接器——>輸入——>附加依賴項——>加入log4cplus.lib,如下圖所示。

在這裡插入圖片描述

如果不添加上述附加依賴項,則需要在代碼開頭中添加如下代碼:

#pragma comment(lib, "log4cplus.lib")

四、測試Demo

簡單測試:

#include <log4cplus/log4cplus.h>

//#pragma comment(lib, "log4cplus.lib")
int main()
{
	//初始化
	log4cplus::Initializer initializer;
	log4cplus::BasicConfigurator config;
	config.configure();
	log4cplus::Logger logger = log4cplus::Logger::getInstance(
		LOG4CPLUS_TEXT("main"));
	LOG4CPLUS_WARN(logger, LOG4CPLUS_TEXT("Hello, World!"));
	return 0;
}

參考:

https://blog.csdn.net/u012372584/article/details/104470098

https://blog.csdn.net/xinyunyxq/article/details/19011315

https://blog.51cto.com/u_15138784/2736212

到此這篇關於C++第三方日志庫log4cplus的安裝與使用超詳解的文章就介紹到這瞭,更多相關C++第三方日志庫log4cplus內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: