vs2010中的SFML错误

SFML Errors in VS 2010

本文关键字:错误 SFML 中的 vs2010      更新时间:2023-10-16

我尝试了这个简单的测试,看看它是否有效:

#include <SFMLSystem.hpp>
#include <iostream>
int main() 
{
    sf::Clock Clock;
    while(Clock.GetElapsedTime() < 5.f)
    {
        std::cout << Clock.GetElapsedTime() << std::endl;
        sf::Sleep(0.5f);
    }
    return 0;
}

我得到以下错误:

Error   1   error LNK2019: unresolved external symbol "void __cdecl sf::Sleep(float)" (?Sleep@sf@@YAXM@Z) referenced in function _main  c:UsersOwnerdocumentsvisual studio 2010ProjectsEngineEnginemain.obj Engine
Error   2   error LNK2019: unresolved external symbol "public: float __thiscall sf::Clock::GetElapsedTime(void)const " (?GetElapsedTime@Clock@sf@@QBEMXZ) referenced in function _main  c:UsersOwnerdocumentsvisual studio 2010ProjectsEngineEnginemain.obj Engine
Error   3   error LNK2019: unresolved external symbol "public: __thiscall sf::Clock::Clock(void)" (??0Clock@sf@@QAE@XZ) referenced in function _main    c:UsersOwnerdocumentsvisual studio 2010ProjectsEngineEnginemain.obj Engine
Error   4   error LNK1120: 3 unresolved externals   c:usersownerdocumentsvisual studio 2010ProjectsEngineDebugEngine.exe    1   1   Engine

这里有一个在VS 2010中安装SFML的指令线程,我遵循了它。不幸的是,我似乎还有问题。

有什么我可能做错了吗?

以下是1.6版本的教程,附截图:
> http://www.sfml-dev.org/tutorials/1.6/start-vc.php

非常重要,如果您链接到dll,您必须在项目设置中添加SFML_DYNAMIC(我链接的教程中也提到了这一点)。

如果您遇到"程序无法启动,因为您的计算机中缺少sfml-system.dll ", 复制include目录下的所有DLL文件并将它们粘贴到C:Windowssystem中。重建你的项目,现在一切都应该很好。