【问题标题】:How to use spdlog如何使用 spdlog
【发布时间】:2020-08-21 12:22:49
【问题描述】:

我是 C++ 新手,请不要烤太多。我正在尝试在 C++ 程序中使用 spdlog 并使用 Jetbrains 的 CLion。

这是我的截图,但不知道我做错了什么。请告知我做错了什么。

这是我的 main.cpp

#include <iostream>
#include "include/spdlog/spdlog.h"


int main() {
    std::cout << "Hello, World!" << std::endl;
    spdlog::info("hello world");
    return 0;
}

这是我的 CMakeList.txt

cmake_minimum_required(VERSION 3.17) project(Lesson01)

set(CMAKE_CXX_STANDARD 14)

add_executable(Lesson01 main.cpp) include_directories(spdlog)

谢谢

【问题讨论】:

  • 请将代码发布为文本而不是图像
  • 错误很明显。您没有正确设置包含路径。对于 CLion,您可以在 CMakeLists.txt 中执行此操作,可能使用标准 find_package() ...您为任何第三方库执行的操作。
  • 这里有一个speedlog的示例脚本:https://github.com/twanas/spdlog-cmake/blob/master/CMakeLists.txt你的CMakeLists.txt错过了find_package(spdlog)target_link_libraries(lesson1 spdlog)
  • @drescherjm,我尝试了你的方法,这就是我的 CMakeLists.txt 看起来像 cmake_minimum_required(VERSION 3.17) 项目(Lesson01) set(CMAKE_CXX_STANDARD 14) find_package(spdlog) add_executable(Lesson01 main.cpp) target_link_libraries (第 1 课 spdlog)
  • @drescherjm,现在在 CMakeLists.txt:7 (find_package) 处收到此错误 CMake 警告:通过在 CMAKE_MODULE_PATH 中未提供“Findspdlog.cmake”,此项目已要求 CMake 查找由“spdlog”,但 CMake 没有找到。找不到由“spdlog”提供的具有以下任何名称的包配置文件: spdlogConfig.cmake spdlog-config.cmake

标签: c++ clion spdlog


【解决方案1】:

在您创建的原型中,您两次提到了关键字 include 第一个在 # 之后,第二个在引号​​之间。

我一直在寻找互联网和 spdlog 原型的基本写作。链接在这里:https://github.com/gabime/spdlog

#include "spdlog/spdlog.h"

测试中没有第二个包含在您的代码中。

一切顺利

马修

【讨论】:

  • 亲爱的 Mathieu,我尝试了您的建议,但收到此错误“spdlog/spdlog.h”文件未找到。
【解决方案2】:

在您的代码中,您有#include "include/spdlog/spdlog.h",并且通过您链接的屏幕截图,可以找到此包含。但是,然后它抱怨spdlog.h 尝试#include &lt;spdlog/common.h&gt;,并且找不到该文件。

这听起来像是您没有为库设置正确的包含目录,而只是通过过度指定路径来正确获取第一个文件。

我会尝试将include_directories(spdlog) 更改为include_directories(include)(或者可能是include_directories(include/spdlog),不完全确定哪个文件夹是包含库的基础文件夹)。如果你愿意,你也可以添加所有这些;我不认为在这里添加太多会破坏任何东西,但它可能会影响编译速度,所以尽量只保留正确的。

此外,在进行此更改后,您可能需要将原始包含从 #include "include/spdlog/spdlog.h" 更改为 #include "spdlog/spdlog.h"

【讨论】:

  • 不能让它发挥作用。我已经更新了代码和截图
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-04
  • 2021-10-25
  • 2018-10-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多