【问题标题】:Installing spdlog by copying contents of include directory通过复制包含目录的内容来安装 spdlog
【发布时间】:2018-10-10 23:52:16
【问题描述】:

我正在尝试使用 spdlog 作为日志库,但我不想使用我的包管理器 (apt) 来安装它。我已将 include 下的 spdlog 目录复制到项目目录的根目录,但是当我尝试编译时出现包含错误,因为 spdlog 标头中的 #include 指令都是绝对的(相对于项目根目录),而不是相对的, gcc 找不到文件。

0:10: fatal error: spdlog/common.h: No such file or directory
 #include "spdlog/common.h"

没有将 spdlog 库中的所有包含更改为相对,我如何在我的项目中使用 spdlog?我也在使用 CMake 来编译我的项目;我的项目根目录中有一个build 目录,我在其中调用cmake ..,然后调用make 进行编译;有什么我需要添加到我的 CMakeLists.txt 文件以包含 spdlog 的吗?

【问题讨论】:

标签: c++ cmake spdlog


【解决方案1】:

需要将项目根目录添加到cmake的include_directories中,像这样:

include_directories(
    /absolute/path/
)

或者在项目根目录下,编辑 CMakeLists.txt 并添加:

include_directories(
    .
)

【讨论】:

  • 这是在搜索路径中包含当前目录的问题。这似乎很明显,因为当前目录是包含spdlog/ 的目录,所以显然spdlog/<whatever>.h 可以解决。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多