Java中有很多日志库:java.util.logging、Log4j、Logback、Log4j2、slf4j、common-logging。C++的日志库相对来说就比较少了,比如说glog、log4cpp、spdllog等,目前个人感觉比较好用的C++开源日志库当属于spdlog了,跨平台,支持cmake编译,在维护中。
具体可以参考github上面的示例:https://github.com/gabime/spdlog
另外spdlog支持两种使用方式:一种是将源代码目录下的include头文件直接添加到自己的项目中使用;另一种使用cmake编译构建出lib静态库或者dll动态库之后以静态和动态链接方式使用。
首先从github上面下载spdllog的zip包源代码:spdlog-1.x.zip
下载完spdlog-1.x.zip之后,将其解压到自己电脑的某个目录下,比如:D:\env目录
首先确保自己的电脑上已经安装了Cmake,我安装的Cmake版本是3.22.1。目前spdlog支持cmake的构建,跨平台支持Windows、Linux、MacOS等,spdlog最低支持cmake 3.10版本。如果没有安装cmake可以到cmake官网下载,目前最新版本的稳定版cmake是3.25版本,下载地址为:https://cmake.org/download/
如果是在Linux或MacOS下使用cmake编译构建比较简单,如下:
$ git clone https://github.com/gabime/spdlog.git
$ cd spdlog && mkdir build