下的cmake和MinGW当我尝试运行cmake建立一个项目,我包括SFML图书馆中,我得到以下错误:SFML found but version too low (requested: 2.4, found: 1.x.x)
编译SFML与Windows
我只需下载该库的最新版本的源(SFML-2.4.2)。我比运行cmake(使用MinGW Makefiles)并将二进制文件构建到同一个文件夹中。 我将FindSFML复制到我的项目的子文件夹中。 之后,我有以下文件夹结构
SFML-2.4.2\
cmake\
Modules\
FindSFML.cmake
CMakeFiles
doc
...
include
lib
src
..
sfml-games\
tetris\
cmake_modules\
FindSFML.cmake
CMakeLists.txt
main.cpp
tetris-build
...
我的CMakeLists.txt包含以下东西:
project(Tetris)
cmake_minimum_required(VERSION 2.8)
aux_source_directory(. SRC_LIST)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake_modules")
Find_package(SFML 2 REQUIRED system window graphics network audio)
include_directories(${SFML_INCLUDE_DIR})
add_executable(${PROJECT_NAME} ${SRC_LIST})
target_link_libraries(${PROJECT_NAME} ${SFML_LIBRARY})
我发现,在C进行录入CMAKE_INSTALL_PREFIX(我不明白)设置为C:\Program Files (x86)\SFML
所以我把库和SFML的lib放到C:\ Program Files(x86)\ SFML中。 (什么是CMAKE_INSTALL_PREFIX,我应该总是将库和lib文件夹复制到我的C:\Program Files (x86)\
??)。现在我的cmake运行通过,但是当我尝试编译代码时,我得到了很多未解析的引用'_imp __....'
顺便说一句,在linux上我刚刚通过sudo apt-get install libsfml-dev
安装了SFML, 。