如何在程序中正确使用SDL2?

问题描述

我想使用SDL2制作游戏,但是我无法编译和/或运行我的代码,请帮忙!

众所周知,SDL2很难设置,并且它经常是第一个有抱负的游戏开发人员尝试使用的库。

这篇文章旨在作为有关设置SDL2常见问题的规范重复。

解决方法

在Mac上,这是我遵循的XCode(必须安装g ++)的方法:

sdl链接:

g++ main.cpp -o main $(sdl2-config --cflags --libs)

XCODE项目步骤:

  1. 打开终端应用(macOS)

  2. 内置设置(选择“全部”和“组合”搜索栏输入:“搜索”)

  3. 单击“标题搜索路径(右侧单击)

  4. 添加:/usr/local/include

  5. 构建阶段->链接二进制库(单击加号)

  6. 键入SDL->单击“添加其他”

  7. 按下:命令 + SHIFT + g (带搜索栏)

  8. 键入:usr/local/Cellar

  9. 导航到:SDL2-> 2.0.8-> lib-> libSDL2-2.2.0.dylib(确保没有快捷方式)

,

Visual Studio解决方案:

为什么不使用包管理器?我使用vcpkg,它使使用第三方库变得超级容易。抓取vcpkg源,并将其提取到安全的地方,例如C:/,然后运行其引导脚本bootstrap-vcpkg.bat,这将生成vcpkg可执行文件。然后运行vcpkg integrate install,使在Visual Studio中可用vcpkg安装的库。

搜索所需的库:

vcpkg search sdl

imgui[sdl2-binding]                   Make available SDL2 binding
libwebp[vwebp-sdl]                    Build the vwebp viewer tool.
magnum[sdl2application]               Sdl2Application library
sdl1                 1.2.15#12        Simple DirectMedia Layer is a cross-platform development library designed to p...
sdl1-net             1.2.8-3          Networking library for SDL
sdl2                 2.0.12-1         Simple DirectMedia Layer is a cross-platform 
...

通过以下方式安装:vcpkg install sdl2

现在,您只需要包含SDL2标头,所有内容都将立即可用。该库将自动链接。

您可以了解有关vcpkg here的更多信息。