我在Eclipse上设置SFML时遇到错误。我完全按照说明操作,但我仍然遇到这些错误。我尝试了TDM SJLJ和MinGW DW2 - 都提供了不同的未定义引用。
我正在与sfml库动态链接,并且我已正确设置库的路径。
这是我得到的一个:
undefined reference to `_imp___ZN2sf6Window5closeEv' SFMLHelloWorld.cpp /SFMLHelloWorld/src line 15 C/C++ Problem
所有未定义的引用都有前缀_impl
。我该如何解决这个问题?
答案 0 :(得分:1)
正如评论_imp__
中所提到的,链接正在寻找导入的功能,这意味着它正在寻找动态库。
由于您只是测试了两个MinGW版本,我假设您不了解它应该如何工作。 MinGW构建不兼容,因此您需要确保您的库是使用您为项目使用的编译器构建的。 SFML网站上的预构建二进制文件是使用较旧的编译器版本构建的,我不建议使用这样的旧编译器。
我建议你让MinGW Builds安装程序接收一个uptodate编译器。接下来,你必须按照official tutorial中的描述使用CMake构建SFML,或者如果你无法正确构建它,你也可以使用我的Nightly Builds of SFML,但你需要确保您使用相同的编译器。