3

此代码使程序冻结(“Game.exe 已停止工作”):

#include <SFML/Graphics.hpp>
#include <SFML/Window.hpp>
#include <SFML/System.hpp>

int main()
{

    sf::Clock clock;
    clock.getElapsedTime();

    return 0;
}

但是,这不会崩溃:

#include <SFML/Graphics.hpp>
#include <SFML/Window.hpp>
#include <SFML/System.hpp>

int main()
{

    sf::Clock clock;

    return 0;
}

我正在使用 SFML 2.0、Windows 7、MinGW 4.70(代码::块)。我不知道为什么,我按照所有说明链接库,但似乎没有任何效果。

我可能因为愤怒而遗漏了一些简单的东西(我已经尝试运行示例代码一周,没有任何效果),所以有人可以给我一根骨头吗?

其他详情:

  • 链接到 -d 库没有帮助
  • 我将所有 .dll 与 .exe 放在同一目录中
  • 调试和发布模式无济于事
  • 我将应用程序设置为“GUI 应用程序”,而“控制台应用程序”也不起作用

GDB 吐出一段。过错:

Program received signal SIGSEGV, Segmentation fault.
In sf::Clock::Clock() () (C:\Users\kworden\Documents\Work\Programming\Game\bin\Debug\sfml-system-2.dll)
At C:\Users\kworden\Documents\Work\Programming\Game\main.cpp:8

解决方案:

自己编译库。我在这里使用了教程并重新链接到 CMake 生成的库。

4

1 回答 1

1

复制评论中的答案:

我用谷歌搜索这个只是为了看看这个库是什么,所有迹象表明你需要重新编译这个库:en.sfml-dev.org/forums/index.php?topic=8726.0

这确实解决了这个问题。

于 2012-10-30T00:02:29.287 回答