致命错误:SFML / Graphics.hpp:不存在此类文件或目录

时间:2015-10-11 23:37:56

标签: c++ sfml

我在使用SFML遇到问题后遇到了问题,但希望最终还是值得的。

这是错误:

  

致命错误:SFML / Graphics.hpp:没有这样的文件或目录

和代码:

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

int main(){
sf::RenderWindow Window;
Window.create(sf::VideoMode(800, 600), "SFML");

while(Window.isOpen()){
    sf::Event Event;
    while(Window.pollEvent(Event)){
        if(Event.type == sf::Event::Closed)
            Window.close();
    }
}
}

6 个答案:

答案 0 :(得分:2)

您需要告诉编译器在哪里查找SFML头文件。这可以通过在编译器调用中传递-I标志来完成:

-I/path/to/SFML/headers

答案 1 :(得分:1)

我对此很新,但是如果您按照教程进行操作,那么您可能将.hpp文件的路径设置为/ include,但.hpp文件实际上位于/ include / SFML

#include <include/SFML/Graphics.hpp>

答案 2 :(得分:0)

如果您正在使用windows visual studio命令行编译器,则include语法为:

/I"path\to\SFML\headers"

答案 3 :(得分:0)

我猜你错了另外的包含和/或库。再次检查 - 如果问题仍未解决 - 请确保 - 如果您没有使用SFML静态 - 如果 SFML DLL 文件位于正确的目录中

我个人发现,将整个SFMl文件夹放入 C 驱动器是个好主意。

修改 SFML和链接器的一个常见错误是编写了graphic-d.lib而不是 graphics-d.lib (在调试模式下)

答案 4 :(得分:0)

如果您使用的是Linux,那么走这条路是可行的方法:

sudo apt-get install libsfml-dev

在以下文档中找到它: https://www.sfml-dev.org/tutorials/2.1/start-linux.php

答案 5 :(得分:-2)