将SFML用于代码块C ++出现错误库SFML

问题描述 投票:0回答:1

我尝试在Codeblocks上安装SFML时遇到问题。好吧,首先我安装代码块:codeblocks-20.03mingw-setup.exe。在我下载SFML 2.5.1:GCC 5.1.0 TDM(SJLJ)-代码::块-32位之后,该编译正确。

以下,我提取了SFML文件。问题出在我的代码块项目中,复制了“ BIN”的内容。视频帮助我完成了所有工作,然后编写了所有库:图形,窗口,网络,音频,系统但没有。我告诉你错误:

cannot find -lsfml-audio-d-2

并继续使用网络,窗口,系统,图形

结尾处:

error: ld returned 1 exit status

怎么了?请帮帮我。解决此问题后,我必须立即使用CODEBLOCKS制作视频游戏。非常感谢您的回答。

c++ xcode sfml helper video-game-consoles
1个回答
0
投票

在SFML下载网站(https://www.sfml-dev.org/download/sfml/2.5.1/)上显示:The compiler versions have to match 100%!

[CodeBlocks 20.03 MinGW安装包括GCC编译器的8.1.0版本(如下载页面上所述:http://www.codeblocks.org/downloads/26。]

因此,您下载的SFML版本仅适用于GCC 5.1.0版,但您具有8.1.0版。这可能会导致许多错误。

有几种方法可以解决您的问题:

  1. 理论上,您可以使用特定的编译器自己编译SFML,但是此选项可能非常复杂。

  2. 您可以使用具有匹配版本的编译器。在SFML下载网站上,有一些指向所需编译器的链接。安装编译器后,您将必须配置CodeBlocks来检测系统上的新编译器(参考:Adding compiler to code::blocks)。现在,为了将SFML添加到您的项目中,我建议使用此官方指南:https://www.sfml-dev.org/tutorials/2.5/start-cb.php

  3. 您可以使用MSYS2之类的环境(我个人使用过)来使程序包管理器管理您的编译器和库的安装。这样,您的编译器安装和您的库应该可以相互配合。但是为了在CodeBlocks中使用此编译器,必须配置CodeBlocks。

我建议您参考选项2,因为它可能是最快的解决方案。

随时询问您是否还有其他问题。从个人经验中我知道,设置SFML(或任何其他C ++库)以与您的IDE配合使用可能会非常棘手。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.