1.首先将库git到本地
https://github.com/google/glog
2.使用cmake-gui进行转换为Visual Studio 的sln工程文件(如下图)
(使用我转换好的也可以https://github.com/czqu/builds/tree/master/glogs


然后选择vs版本和CPU架构(如果之前编译错了,再进去可能不能进到这个界面,把输出目录删除即可)

3.点击generate,即可完成。
4.如果出现如下错误,说明你缺少gflags库,编译方法和上面一样不再赘述
https://github.com/gflags/gflags
1 2 3 4 5 6
| Could not find a package configuration file provided by "gflags" (requested version 2.2.0) with any of the following names:
gflagsConfig.cmake gflags-config.cmake
|

5.然后新建一个测试工程(debug库和release库不能混用,不同架构也不能),添加头文件和库目录,记得需要在开头加上 GLOG_NO_ABBREVIATED_SEVERITIES和GOOGLE_GLOG_DLL_DECL,不然会报错
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
| #pragma once #define GLOG_NO_ABBREVIATED_SEVERITIES #define GOOGLE_GLOG_DLL_DECL #include <logging.h> using namespace google; #ifdef _DEBUG #pragma comment(lib, "glogd.lib") #else #pragma comment(lib, "glog.lib") #endif void testGlog2() { char str[20] = "hello log!"; int i = 100000; while (i > 0) { LOG(INFO) << "2info 2test" << "2hello 2log!"; i--; } } void testGlog() {
FLAGS_log_dir = "E:\\logs"; google::InitGoogleLogging("loglog"); google::SetLogDestination(google::GLOG_INFO, "E:\\logs\\INFO_"); google::SetStderrLogging(google::GLOG_FATAL); google::SetLogFilenameExtension("log_"); FLAGS_colorlogtostderr = true; FLAGS_logbufsecs = 0; FLAGS_max_log_size = 1024; FLAGS_stop_logging_if_full_disk = true; thread *t = new thread(testGlog2); char str[20] = "hello log!"; int i = 100000; while (i > 0) {
LOG(INFO) << "info test" << "hello log!";
i--; } t->join(); google::ShutdownGoogleLogging(); }
|