SFML C++中的生成错误

Build errors in SFML C++

本文关键字:错误 C++ SFML      更新时间:2023-10-16

几个月来我一直在尝试安装 SFML,但没有运气。今天我决定再试一次。 起初它甚至没有找到SFML\graphics.hpp包含文件,但我最终修复了它。 现在我收到一个新错误。 编译下面的代码时,我收到一堆错误。 这是代码:

#include <SFMLGraphics.hpp>
int main() {
int window_width = 640;
int window_height = 480;
sf::RenderWindow window(sf::VideoMode(window_width, window_height), "SFML Tutorial");
while (window.isOpen()) {
// handle events
// update game logic
window.clear();
// draw objects
window.display();
}
return 0;
}

以下是错误: 严重性代码说明项目文件行抑制状态 错误LNK2019未解析的外部符号"__declspec(dllimport( public: __thiscall sf::String::String(char const *,class std::locale const &(" (__imp_??0String@sf@@QAE@PBDABVlocale@std@@@Z( 在函数_main SFML 模板 C 中引用:\用户\theyo\桌面\SFML\SFML 模板\SFML 模板\SFML 模板\SFML 模板.obj 1

严重性代码说明项目文件行抑制状态 错误LNK2019未解析的外部符号"__declspec(dllimport( public: __thiscall sf::String::~String(void(" (__imp_??1String@sf@@QAE@XZ( 在函数_main SFML 模板 C 中引用:\用户\theyo\桌面\SFML\SFML 模板\SFML 模板\SFML 模板\SFML 模板.obj 1

我实际上有太多的东西可以放到这篇文章中,我不知道在哪里可以找到日志文件给你。 我知道可能没有人能帮忙,但如果你理解,请试着帮忙。

我还收到其中 6 个警告: 严重性代码说明项目文件行抑制状态 警告LNK4272库计算机类型"x64"与目标计算机类型"x86"冲突 SFML 模板 C:\用户\他们\桌面\SFML\外部库\SFML\lib\sfml-graphics-d.lib 1

  • SFML 中的每个库文件对应一个。

仅在今天,我就有一帧一帧地复制了以下视频 https://www.youtube.com/watch?v=_9yem5dJt2E 没有运气。 我越来越绝望了。 谢谢。

您的链接器似乎有问题。确保您已经为正确的架构/平台及其依赖项链接了正确的文件(当然,以正确的顺序(。话虽如此,可能是您下载的 SFML 版本与您正在使用它的编译器不匹配。您可以随时重新检查或从源代码自己构建 SFML。 如果您不想经历所有这些,那么我在 GitHub 上有一个带有 VS2019 的 SFML 模板。

SFMLVS2019模板

如果您无法弄清楚某些内容,请浏览自述文件。 另外,正如有人提到的,我认为您应该更多地研究编译器和链接器的工作原理。IDE绝对使它看起来比实际更容易。