在Windows 10上的CLion / CMake中“无法找到SFML”错误?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Windows 10上的CLion / CMake中“无法找到SFML”错误?相关的知识,希望对你有一定的参考价值。

我目前正在尝试在Windows 10上将SFML集成到CLion中(我对SFML或CMake不是很熟悉)。我在我的CMakeLists.txt中尝试了一些不同的东西和组合,但我一直得到同样的错误:

CMake Error at cmake_modules/FindSFML.cmake:199 (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:12 (find_package)

这是我的CMakeLists.txt:

cmake_minimum_required(VERSION 3.10)
project(P3)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

set(SOURCE_FILES main.cpp)
add_executable(P3 ${SOURCE_FILES})

set(SFML_ROOT "C:/SFML-2.5.1")

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})
    link_directories("C:/SFML-2.5.1")
    target_link_libraries(P3 ${SFML_LIBRARIES})
endif()

我不确定我在这里做错了什么。我已经参与了很长一段时间,尽管有无数的谷歌搜索和研究,我似乎无法找到解决方案。任何帮助将不胜感激,并提前感谢您。

此外,我的FindSFML.cmake文件位于我在我的CLionProjects文件夹中的项目文件夹中创建的cmake_modules文件夹中,如果这是有用的信息。

答案

似乎cmake找不到SFML组件。

根据这个链接(https://en.sfml-dev.org/forums/index.php?topic=24070.0),你可以尝试: set(SFML_DIR "C:/SFML-2.5.1") find_package(SFML 2.5 COMPONENTS graphics audio REQUIRED)

以上是关于在Windows 10上的CLion / CMake中“无法找到SFML”错误?的主要内容,如果未能解决你的问题,请参考以下文章

SFML不适用于Windows上的CLion

clion配置cmake添加boost库

CLion 閰嶇疆缂栬瘧鍣?(MinGW)

在 CLion 和 Cmake 中设置外部头文件和链接器库的问题 [重复]

CLion+CMake编写C++程序

Windows安装部署yahoo的cmak运行时报错:输入行太长,命令语法不正确