【发布时间】:2019-07-09 00:18:21
【问题描述】:
我正在尝试使用适用于 Windows 的 64 位 CMake 和 64 位 SFML 2.5.1 构建一个 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 (find_package) 处的 CMake 错误:找不到 与兼容的包“SFML”的配置文件 请求版本“2.5”。
已考虑但未接受以下配置文件:
D:/Program Files/SFML-2.5.1/lib/cmake/SFML/SFMLConfig.cmake,版本: 2.5.1(64位)
【问题讨论】:
-
在这种情况下,CMake 是否为 64 位并不重要。您的工具链必须配置为构建 64 位二进制文件。从错误和您对解决方法的描述来看,您似乎使用的是 32 位工具链。
-
那么我该如何使用 64 位工具链呢?