链接错误w / SFML 2.4(C ++)

时间:2018-01-18 01:56:07

标签: c++ visual-studio linker-errors sfml build-error

有一段时间了,我一直在尝试将SFML库用于C ++。 但是,每当我尝试运行程序时,我都会遇到一系列围绕未定义符号的构建错误。我正在从Visual Studio构建,我已将include目录,附加库和bin中的所有DLL添加到源目录和构建目录中。不过,我无法建立这个程序。

我的代码:

#include <SFML\Graphics.hpp>

int main() {
    sf::RenderWindow window(sf::VideoMode(640, 380), "Test Window");

    while (window.isOpen()) {
        // events

        window.clear();

        // drawing
    }
    system("pause");
}

错误: enter image description here 包含目录:SFML-2.4.2 / include

Lib目录:SFML-2.4.2 / lib

链接器输入:

sfml-main-d.lib
sfml-graphics-d.lib
sfml-window-d.lib
sfml-system-d.lib
sfml-audio-d.lib
sfml-network-d.lib

1 个答案:

答案 0 :(得分:0)

我知道这大约是一个半岁,但是我遇到了同样的错误,并且已经解决了。 以下Pastebin文件是我的配置文件和任务文件(在我的情况下,与Visual Studio Code版本1.32.3可以正常工作,请阅读底部的内容以进行更改) 日期:2019-03-14 电子:3.1.6 铬:66.0.3359.181 Node.js:10.2.0 V8:6.6.345.32 操作系统:Windows_NT x64 10.0.17134

c_cpp_properties.json: https://pastebin.com/3gw8J4d2``
task.json: https://pastebin.com/s1rjswWG``

重要提示: 更改以下内容: (如果您在标准路径上安装了MinGW)

  • c_cpp_properties.json:K:/libs/SFML-2.5.1/include必须更改 到SFML的安装路径,请确保也在浏览路径中也进行更改!!!
  • tasks.json:

  • “-IK:/libs/SFML-2.5.1/”,将K:/libs/SFML-2.5.1/include更改为您的 SFML的安装路径

  • “-LK:/libs/SFML-2.5.1/lib”,再次将K:/libs/SFML-2.5.1/lib更改为
    您的SFML安装路径

我犯了一些错误:

  • 我没有删除“ -L K: /libs/SFML-2.5.1/lib”中的K:
  • tasks.json顶部的命令中没有g ++
  • 我没有使用正确的编译/链接路径(搜索您所有的路径 在放弃之前在浏览器中使用)

一些有用的链接:

我希望我能帮上忙 如果您有任何疑问,可以通过Reddit u / Spagetti_Lord(最活跃)向我发送消息