SFML编译运行缺少dll

时间:2018-05-18 11:09:52

标签: mingw sublimetext sfml

编译单个脚本时遇到问题。 我使用SublimeText和MinGW编译器。我输入了所有SFML库。

这是代码:

    #include <SFML/Graphics.hpp>
#include <time.h>

using namespace sf;

    int main()
    {
        RenderWindow window(VideoMode(453,453),"Sachy");

        Texture t1;
        t1.loadFromFile("images/figures.png");

        Sprite s(t1);

        while(window.isOpen())
        {
            Event e;
            while(window.pollEvent(e))
            {
                if(e.type == Event::Closed)
                    window.close();
            }
            window.clear();
            window.draw(s);
            window.display();
        }
    }

在cmd.exe中我运行:

g++ main.cpp -static-libgcc -lsfml-graphics -lsfml-window -lsfml-system

编译没有错误。当尝试启动a.exe时,此错误显示:

The code could not be started because libgcc_s_sjlj-1.dll was not found. Try to resolve this problem by reinstalling the program

1 个答案:

答案 0 :(得分:0)

您默认使用共享GCC运行时,因此您编译的可执行文件将取决于它,您可以在MinGW的bin目录中找到它。

如果您不想复制这些库,则可以使用静态运行时,方法是在命令行中添加以下两个选项:

-static-libgcc -static-libstdc++

请注意,这会增加生成的二进制文件的大小。