glog没有在-dir_log位置生成日志文件

1 篇文章 0 订阅

-dir_log是glog一个内置的gflag,如果不设置的话,默认的日志文件会生成在/tmp目录下。

./mytest  -dir_log=./logs

但是发现设置了以后,运行没有效果,文件还是生成在了/tmp下。main函数源码如下:

int main(int argc, char *argv[]) {
  glog::InitLogging("mytest");
  std::cout << FLAGS_log_dir << std::endl;
  gflags::ParseCommandLineFlags(&argc, &argv, true);
  
  //...
}

在源码里打印了FLGAS_log_dir发现,总是打印/tmp。

想了一下发现,FLAGS_log_dir是来自gflag的解析结果的,所以应该在InitLogging之前就ParseCommandLineFlags。改成如下就成功设置了log_dir:

int main(int argc, char *argv[]) {
  gflags::ParseCommandLineFlags(&argc, &argv, true);
  glog::InitLogging("carsim");
  std::cout << FLAGS_log_dir << std::endl;
  //...
}

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 找不到Google日志(glog)。请设置以下之一:glog_dir(较新的CMake构建版本的glog)或glog_include_dir&glog_library,或启用miniglog选项以使用最小的glog实现。 ### 回答2: (glog 的版本较新,CMake 构建版本)或 glog_include_dir Google Log(glog)是 Google 的日志记录工具库,它能够记录并输出应用程序的日志信息,方便程序员进行程序调试和问题排查。 如果在您的代码中无法找到 Google Log(glog)的日志记录功能,可能是由于您尚未正确设置 GLOG 的目录或包含目录等相关信息。 在下载和编译 GLOG 库的过程中,您需要设置相关参数,以告知操作系统如何定位 GLOG 库和头文件等资源。 如果您使用的是较新版本的 CMake 构建版本的 GLOG,可以通过设置 GLOG_DIR 参数来告知操作系统 GLOG 库的路径。如果您使用的是旧版 GLOG,可能需要设置 GLOG_INCLUDE_DIR 参数来指示操作系统 GLOG文件位置。 建议您在编译和配置 GLOG 库之前,先参考相关文档和教程,了解如何正确设置 GLOG 的目录和头文件等参数。这将有助于您避免出现 GLOG 文件未找到的问题,并确保您能够正常调用 GLOG日志功能,提高应用程序的稳定性和可维护性。 ### 回答3: 很抱歉看到大家出现了找不到glog的问题。如果您无法找到glog,会提示"can't find google log (glog). please set either: glog_dir (newer cmake built versions of glog) or glog_include_dir",提醒您需要设置一个路径。 在此,我将为大家解析一下这个问题,并提供解决方案。 首先,Glog是一个Google提供的开源C++库,用于在运行时记录和输出事件信息(例如,调试信息、错误信息等)。Glog库将信息记录日志文件中,以便开发人员进行后续分析。 当您在运行程序时,如果出现了“can't find google log (glog)”这个提示,说明您的程序没有找到glog的安装路径或相关头文件。 解决方案有两种: 1.设置glog_dir 如果您的程序是使用cmake编译的,并且您已经安装了新版本的glog,可以尝试设置glog_dir的路径来解决问题。这可以通过在CMakeLists.txt中添加以下代码实现: set(glog_dir "/usr/local/include/glog/") 其中"/usr/local/include/glog"是您glog的安装路径。 2.设置glog_include_dir 另一种解决方案是设置glog_include_dir的路径,该路径指向glog的头文件所在位置。例如: set(glog_include_dir "/usr/local/include/") 这将告诉编译器在这个文件夹里找到glog的头文件。 总之,如果您的程序因找不到glog而出现问题,可以尝试以上两种解决方案之一。设置glog_dir或glog_include_dir的路径,以确保程序正常运行并记录所需信息。希望这些信息对您有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值