我正在尝试使用适用于Windows的CMake 64位和SFML 2.5.1 64位来构建C ++项目。当我在项目上运行cmake时,我收到一条错误消息。
[使它正常工作的唯一方法是将CMAKE_PREFIX_PATH
更改为指向SFML的32位版本,但这不是我想要的。
CMakeLists.txt:
cmake_minimum_required (VERSION 3.8)
#project(GameOfLife)
set(CMAKE_PREFIX_PATH "D:\\Program Files\\SFML-2.5.1\\lib\\cmake\\SFML")
find_package(SFML 2.5 COMPONENTS graphics window REQUIRED)
# Add source to this project's executable.
add_executable (GameOfLife "GameOfLife.cpp" "GameOfLife.h")
# Link SFML
target_link_libraries(GameOfLife sfml-graphics sfml-window)
错误消息:
CMakeLists.txt:16的CMake错误:(find_package):找不到与“ SFML”包兼容的配置文件要求版本“ 2.5”。
以下配置文件已被考虑但未被接受:
D:/ Program Files / SFML-2.5.1 / lib / cmake / SFML / SFMLConfig.cmake,版本:2.5.1(64位)
我面临同样的问题,经过一番调查,我了解到斯坦利的评论是正确的。要使用64位工具链,只需运行:
cmake -G "Visual Studio 15 2017 Win64" ..
对于32位SFML版本,只需运行即可:cmake ..