使用纯CMake构建SFML时出现运行时错误

jvn91173

我正在启动一个使用SFML 2.5.1的项目。我在Windows上,并且尝试使用纯CMake进行构建。CMake和编译步骤似乎工作正常,但是当我尝试在CLion中运行程序时,出现以下错误:

Process finished with exit code -1073741515

此外,如果我在命令行中找到可执行文件并尝试在其中运行,程序将崩溃并显示以下消息:

The code execution cannot proceed because sfml-window-d-2.dll was not found.

对于上下文,我的项目在其根目录中有一个文件main.cpp以及我的CMakeLists.txt文件。根目录还包含SFML源代码,该源代码是从https://www.sfml-dev.org/download/sfml/2.5.1/上的“源代码”下载链接下载的

这是我的CMakeLists.txt:

cmake_minimum_required(VERSION 3.15)
project(sfmltest)

set(CMAKE_CXX_STANDARD 17)

add_subdirectory(SFML)

include_directories(SFML/include)

add_executable(sfmltest main.cpp)

target_link_libraries(sfmltest sfml-graphics sfml-audio sfml-network sfml-window sfml-system)

这是我的main.cpp。它只是一个标准的SFML“ Hello World”应用程序。

#include <SFML/Window.hpp>

int main()
{
    sf::Window window(sf::VideoMode(800, 600), "My window");
    while (window.isOpen())
    {
        sf::Event event;
        while (window.pollEvent(event))
        {
            if (event.type == sf::Event::Closed)
                window.close();
        }
    }
    return 0;
}

我在CMakeLists.txt文件中缺少什么吗?

编辑1:我不想要诸如复制和粘贴dll的修复程序。我希望能够完全从头开始构建SFML。这是为了确保我的项目是可移植的,跨平台的,易于设置的,并且可以使用CLion中的CMake编译(不是Visual Studio或Code :: Blocks)。

编辑2:添加set(BUILD_SHARED_LIBS FALSE)到我的CMakeLists.txt文件就可以了。我的最小程序正在运行!

奇瓦拉

该文件sfml-window-d-2.dll丢失。将包含SFML DLL的目录的路径添加到Code :: Block动态库搜索路径(如果C :: B中存在这种情况),或将其添加到PATH环境变量中,或将这些库简单地复制到包含以下内容的文件夹中:可执行的。您可以添加将复制这些库的构建后步骤。

编辑:由于我的声誉低下,我无法发表评论。

您可以构建SFML静态库以避免复制dll。您必须BUILD_SHARED_LIBS在CMake中禁用该选项。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

尝试使用pip时出现运行时错误

来自分类Dev

使用动态数组时出现运行时错误 1004

来自分类Dev

Perl:在运行时构建二维数组时出现内存不足错误

来自分类Dev

Perl:在运行时构建二维数组时出现内存不足错误

来自分类Dev

运行Go代码时出现运行时错误

来自分类Dev

运行for循环时出现奇怪的运行时错误'424'

来自分类Dev

运行“粘贴”时,出现VBA运行时错误438

来自分类Dev

使用包含使用EF查询记录时出现多个运行时错误

来自分类Dev

3265检索表信息时出现运行时错误

来自分类Dev

启动地图时出现运行时错误

来自分类Dev

打开Excel文件时出现运行时错误

来自分类Dev

编译Java运行时库时出现Protobuf错误

来自分类Dev

设置图像javafx时出现运行时错误IllegalArgumentException

来自分类Dev

打开Access时出现“运行时错误91”

来自分类Dev

从FormControl ListBox检索值时出现运行时错误

来自分类Dev

3265检索表信息时出现运行时错误

来自分类Dev

设置图像javafx时出现运行时错误IllegalArgumentException

来自分类Dev

打开Word文件时出现运行时错误'1004'

来自分类Dev

编译Java运行时库时出现Protobuf错误

来自分类Dev

保存NewWorkbook时出现运行时错误

来自分类Dev

在 VBA 中执行 SQL 时出现运行时错误

来自分类Dev

生成邮件合并时出现运行时错误 424

来自分类Dev

将“:”更改为“;”时出现运行时错误 VBA

来自分类Dev

使用VBA从受保护的网站导入Excel中的数据时出现运行时错误438

来自分类Dev

使用getline,strcpy,strtok C ++加载.txt文件时出现运行时错误

来自分类Dev

使用malloc在运行时分配内存时出现分段错误

来自分类Dev

使用静态导入编译运行时参数注释时出现“不兼容类型”错误

来自分类Dev

仅在使用“填充”时才出现“运行时错误'13'?

来自分类Dev

使用VBA访问ActiveX控件时出现运行时错误'438'问题

Related 相关文章

  1. 1

    尝试使用pip时出现运行时错误

  2. 2

    使用动态数组时出现运行时错误 1004

  3. 3

    Perl:在运行时构建二维数组时出现内存不足错误

  4. 4

    Perl:在运行时构建二维数组时出现内存不足错误

  5. 5

    运行Go代码时出现运行时错误

  6. 6

    运行for循环时出现奇怪的运行时错误'424'

  7. 7

    运行“粘贴”时,出现VBA运行时错误438

  8. 8

    使用包含使用EF查询记录时出现多个运行时错误

  9. 9

    3265检索表信息时出现运行时错误

  10. 10

    启动地图时出现运行时错误

  11. 11

    打开Excel文件时出现运行时错误

  12. 12

    编译Java运行时库时出现Protobuf错误

  13. 13

    设置图像javafx时出现运行时错误IllegalArgumentException

  14. 14

    打开Access时出现“运行时错误91”

  15. 15

    从FormControl ListBox检索值时出现运行时错误

  16. 16

    3265检索表信息时出现运行时错误

  17. 17

    设置图像javafx时出现运行时错误IllegalArgumentException

  18. 18

    打开Word文件时出现运行时错误'1004'

  19. 19

    编译Java运行时库时出现Protobuf错误

  20. 20

    保存NewWorkbook时出现运行时错误

  21. 21

    在 VBA 中执行 SQL 时出现运行时错误

  22. 22

    生成邮件合并时出现运行时错误 424

  23. 23

    将“:”更改为“;”时出现运行时错误 VBA

  24. 24

    使用VBA从受保护的网站导入Excel中的数据时出现运行时错误438

  25. 25

    使用getline,strcpy,strtok C ++加载.txt文件时出现运行时错误

  26. 26

    使用malloc在运行时分配内存时出现分段错误

  27. 27

    使用静态导入编译运行时参数注释时出现“不兼容类型”错误

  28. 28

    仅在使用“填充”时才出现“运行时错误'13'?

  29. 29

    使用VBA访问ActiveX控件时出现运行时错误'438'问题

热门标签

归档