C++ Windows下Glog日志库安装使用教程

 2018年是我写过一个关于Glog使用的教程(https://blog.csdn.net/qq_27278957/article/details/84648912),但是最近再使用时,发现和当时使用方法有所不同,所以再重新整理一份。

一、简述

Google Glog 是一个C++语言的应用级日志记录框架,提供了 C++ 风格的流操作和各种助手宏。

二、环境

windows 10 + vs2017 + Glog v0.5.0+ cmake

三、安装Glog

1、在Glog官方中下载Glog代码,官方地址:https://github.com/google/glog

2、编译

这里用的是cmake编译。

(1)解压glog-master.zip,进入目录中,并创建目录build,用于存放编译后的文件;创建install目录用于存放最终编译生成的头文件、dll、lib文件。

C++ Windows下Glog日志库安装使用教程_第1张图片

 (2)打开cmake,源码目录选择解压后的glog-master目录,编译目录选择刚刚创建的build目录。点击“Configure”按钮,选择vs2017 、x64,配置成功。

C++ Windows下Glog日志库安装使用教程_第2张图片

 (3)编译选项;

  • 把BUILD_SHARED_LIBS选项勾上;
  • CMAKE_INSTALL_PREFIX,修改为刚刚创建的install目录,用于存放生成的头文件、库文件;
  • WITH_GFLAGS和WITH_UNWIND 这两个选项取消勾选,因为不知道它们是什么作用,但是勾选上会报警告;暂时先取消,后期需要的话再勾选上编译;

C++ Windows下Glog日志库安装使用教程_第3张图片

 最后再次点击“Configure”按钮,再点击“Generate”按钮。

C++ Windows下Glog日志库安装使用教程_第4张图片

 (4)在build目录中找到 glog.sln,用vs2017打开【注意:一定要用管理员身份运行vs2017,不然生成库时会报错】,选择Debug/Release x64,这里我选择的是Release x64。

3、依次对项目“ALL_BUILD”、“INSTALL”生成。

C++ Windows下Glog日志库安装使用教程_第5张图片

 4、全部生成成功后,在install目录中看到生成的头文件、dll文件和lib文件。

C++ Windows下Glog日志库安装使用教程_第6张图片

 5、我们只需要install这一个目录即可,其他的所有文件都可以删除了。我这里把install目录单独拷贝出来,修改了名称;

C++ Windows下Glog日志库安装使用教程_第7张图片

 6、根据需求,自行在windows环境变量Path中添加Glog的bin路径;【添加到系统环境变量中后就不需要把dll文件拷贝到项目运行目录下了】

四、在C++中调用Glog保存日志

1、配置

(1)在vs2017中,右击项目进入属性页;

(2)在“配置属性”->“C/C++”->“常规”->“附加包含目录”中添加Glog的include目录;

(3)在“配置属性”->“链接器”->“常规”->“附加库目录”中添加Glog的lib目录;

(4)在“配置属性”->“链接器”->“常规”->“输入”->“附加依赖项”中添加glog.lib(Release模式)或glogd.lib(Debug模式)。

(5)添加预处理项。项目属性-> c/c++ ->预处理器。 添加GLOG_NO_ABBREVIATED_SEVERITIES

2、使用

(1)正式在代码中使用。注意:GLog在整个项目周期中只允许生成一个日志文件,也就是说,glog从初始化到注销整个过程,不允许再次调用glog的初始化或者注销,另一种意思可以理解为只允许有一个实例化对象。

C++ Windows下Glog日志库安装使用教程_第8张图片

(2)在需要使用glog打印日志的cpp文件中包含头文件

#include "glog/logging.h" // 第三方日志库 glog

(3)在整个项目开始的地方,调用GlogInit()方法

(4)在项目中任何类中、任何地方,都可以使用。

LOG(INFO)<< ” ” ;

LOG(INFO)<< 变量名 ;

(5)其中INFO只是glog的一个日志级别,还有其他的级别。

C++ Windows下Glog日志库安装使用教程_第9张图片

 (6)在整个项目结束的地方,调用GlogUnInit()方法,日志生成成功。如果不调用此方法,日志文件不会生成。

你可能感兴趣的:(C++,windows,c++,Glog日志库安装使用教程)