c++ - 为 clion (windows) 配置 SFML

标签 c++ cmake sfml clion

我正在为我的 Windows 计算机上的学校项目设置工作环境。我们将使用 C++ 和 CLion 制作一个基本游戏。要制作游戏,我需要使用 SFML 库。我已经遵循了一些教程,但我似乎无法让它正常工作。

我有:

  • 下载 CLion 并使用 MinGW 配置
  • 下载 SFML 并将其“findSFML.cmake”文件复制到我称为 cmake_modules 的项目中的新目录。
  • 编辑我的 CMakeLists.txt 文件,使其看起来像这样:
cmake_minimum_required(VERSION 3.6)
project(testet)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(SOURCE_FILES main.cpp)

add_executable(testet ${SOURCE_FILES})
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake_modules")
find_package(SFML REQUIRED system window graphics network audio)
if (SFML_FOUND)
    include_directories(${SFML_INCLUDE_DIR})
    target_link_libraries(testet ${SFML_LIBRARIES})
endif()

这些是我在每个教程/答案中看到的三个步骤。但无论如何我都会收到以下错误:

"C:\Program Files (x86)\JetBrains\CLion 2016.3\bin\cmake\bin\cmake.exe" -DCMAKE_BUILD_TYPE=Debug -G "CodeBlocks - MinGW Makefiles" C:\Users\Benjamin\ClionProjects\testet
CMake Error at cmake_modules/FindSFML.cmake:355 (message):
Could NOT find SFML (missing: SFML_SYSTEM_LIBRARY SFML_WINDOW_LIBRARY
SFML_GRAPHICS_LIBRARY SFML_NETWORK_LIBRARY SFML_AUDIO_LIBRARY)
Call Stack (most recent call first):
CMakeLists.txt:10 (find_package)

所以它找不到 SFML?但是“findSFML.cmake”不应该解决这个问题吗?任何帮助都很感激...谢谢! :D

最佳答案

我相信您错过了 link_directories() 调用。你可以像这样使用它:

link_directories("C:/Path_To_Library")

这应该有助于解决您的问题。

关于c++ - 为 clion (windows) 配置 SFML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40773183/

相关文章:

c++ - SFML View setCenter 与旋转

静态变量导致的 C++ 内存泄漏

c++ - 用于加密/解密的 Firebird 数据库 UDF 不释放内存

c++ - 寻找具有顺序访问功能的独立内存数据服务器

C++ & Clion & GTK3 & glade 信号不工作

c++ - 从 cmake 执行 make

gcc - 如何在 Ubuntu 上使用 DSFML2 和 D2 解决链接器错误?

c++ - 使用 Xcode 11 和 macOS Catalina (zsh) 编译后 SFML 崩溃

c++ - 为什么 std::vector 使用 std::allocator 而不是 operator new 和 delete?

dll - find_library 选择静态库而不是共享库