SDL2 - 找不到lsdlmain和lsdl。代码块

时间:2015-04-01 08:34:24

标签: c++ sdl codeblocks

我刚开始使用Lazy Foo的教程搞砸了SDL2而且我遇到了一些问题。建设时我遇到两个错误:

找不到lsdl

找不到lsdlmain

现在...当然找不到那些,因为它们不在我链接的lib文件夹中。我只有lsdl2main和lsdl2。我把SDL2.dll放在我的项目文件夹中并按照Lazy Foo的说法做了一切,但我仍然有这个问题。我设法通过从lib文件夹复制lsdl2和lsdl2main并将它们更改为lsdl和lsdlmain来绕过此问题。现在我有lsdl / lsdlmain和lsdl2 / lsdlmain ...即使它们是相同的库。我不认为这是好的,这就是为什么我问这个问题。解决这个问题的正确方法是什么?我在懒惰foo上读到有关编译器在64位上选择32位库的一些内容,但我使用的是32位文件夹中的32位库,所以我不确定这是否是一个问题。

2 个答案:

答案 0 :(得分:1)

正确的方法是在链接器选项中使用sdl2mainsdl2而不是过时的sdlmainsdl。 Lazy Foo的教程已经过时,如果您打算使用SDL2而不是SDL 1.x(这是教程所基于的版本),显然需要进行一些修正。

答案 1 :(得分:1)

这个问题已经有一年了,但我希望这仍然有助于有人努力寻找答案。如果你在Code Blocks上关注Lazy Foo的教程“设置SDL”,你可能不小心通过Google打开了他的旧教程。 http://lazyfoo.net/SDL_tutorials/代替http://lazyfoo.net/tutorials/SDL/,其中包含更新的说明。

他的旧表明你必须在Global Compiler的链接器上填写-lsdl和-lsdlmain,它位于Settings>下。编译器..>链接器设置。然后你以某种方式打开了他的新教程,该教程向您展示了在Build选项的链接器下填充-lSDL2main -lSDL2。

只需检查全局编译器的链接器或构建选项的链接器设置是否正确。在任一个上设置-lSDL2main -lSDL2标志都应该有效。