首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Windows上用CMake查找SFML

在Windows上用CMake查找SFML
EN

Stack Overflow用户
提问于 2016-10-08 13:33:56
回答 2查看 7.7K关注 0票数 0

我在windows上编译了SFML (MinGW),发现自己拥有一个包含bin、include、lib和cmake/Modules/FindSFML.cmake文件的目录结构。

我找不到如何在CMakeLists.txt中使用SFML,不管它是

代码语言:javascript
运行
复制
find_package(SFML REQUIRED)

代码语言:javascript
运行
复制
find_package(SFML CONFIG REQUIRED)

当我使用cmake时,我得到的只有:

代码语言:javascript
运行
复制
CMake Error at CMakeLists.txt:34 (find_package):
  Could not find a package configuration file provided by "SFML" with any of
  the following names:

    SFMLConfig.cmake
    sfml-config.cmake

  Add the installation prefix of "SFML" to CMAKE_PREFIX_PATH or set
  "SFML_DIR" to a directory containing one of the above files.  If "SFML"
  provides a separate development package or SDK, be sure it has been
  installed.

我尝试手动设置:

代码语言:javascript
运行
复制
SFML_DIR:PATH=E:/code/libraries/SFML-2.4.0
CMAKE_MODULE_PATH:PATH=E:/code/libraries/SFML-2.4.0

代码语言:javascript
运行
复制
CMAKE_MODULE_PATH:PATH=E:/code/libraries/SFML-2.4.0/cmake/modules

但我没有取得任何进展。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-10-30 23:47:45

这是我们得到的一步一步的指导(图片)。完成此操作后,您必须记住,您需要将库链接到您的程序,并使用以下一行:

target_link_libraries (<Name of project here> sfml-graphics sfml-window sfml-system)

如果您想在SFML中使用奥迪库,只需在末尾添加sfml-audio,等等。在调试模式下,每个库的末尾都应该有一个-d。就像这个sfml-graphics-d

如果您在CMake或更改项目中做了一些重大更改,则需要添加:

-IC:/dev/libs/SFML/include -LC:/dev/libs/SFML/lib又回来了。(您可以在需要的地方添加文件夹)。-I用于包含文件夹,-L用于所有lib文件夹,您需要在所有路径前面使用这封信。

如果链接/bin文件夹有问题,可以删除System32文件夹中的所有.dll文件(64位文件,32位SysWOW64文件)。

记住,拥有一个与SFML匹配的GW。

票数 2
EN

Stack Overflow用户

发布于 2017-02-03 08:18:09

当我在cmake中得到相同的错误时,我所做的只是添加了名为"SFMLDIR“的条目,并添加了指向sfml目录的路径值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39933001

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档