4

目前,我正在尝试弄清楚如何使用 MinGW 设置 SDL。我见过几个有方法的网站(或者更确切地说,重新发布了相同的方法),但我宁愿没有“快速'n脏”设置。

我看到有一个 sdl-conf 文件,我安装了 MSYS,并且我已经下载了最新的 SDL 1.2 MinGW 开发人员版本。

4

1 回答 1

11

教程在 这里。它解释了所需的一切:

  1. 您需要做的第一件事是下载 SDL 标头和二进制文件。您可以在 SDL 网站上找到它们,特别是在此页面上。

向下滚动到开发库部分并下载 Mingw32 开发库

打开 gz 存档,里面应该有一个 *.tar 存档。打开 *.tar,里面应该有一个文件夹。打开文件夹,它将包含一堆子文件夹。

  1. 将 lib 子文件夹的内容复制到 MinGW lib 文件夹。MinGW lib 文件夹应位于 C:\MinGWStudio\MinGW\lib。

  2. 之后,打开存档中的 include 子文件夹,将名为“SDL”的文件夹解压缩到 MinGW 包含文件夹,该文件夹应位于 C:\MinGWStudio\MinGW\include。

注意:某些版本的 SDL 在存档的包含子文件夹中没有名为“SDL”的文件夹,而只是一堆头文件。要解决这个问题,只需在您的 MinGW 包含文件夹中创建一个名为“SDL”的文件夹,然后将所有头文件从存档复制到您创建的文件夹中。

  1. 现在从存档中获取 SDL.dll(它应该在 bin 子文件夹中)并解压缩它。当你编译它时,你将把它和你的 exe 放在同一个目录中。

或者,您可以将 SDL.dll 复制到 C:\WINDOWS\SYSTEM32,这样即使 SDL.dll 不在同一个目录中,您的 SDL 应用也会找到它。如果您使用的是 64 位版本的 Windows,您需要将 dll 放在 C:\Windows\SysWOW64 中。

这种方法的问题是,如果您有多个使用不同版本的 SDL 的 SDL 应用程序,则会出现版本冲突。如果应用程序使用 1.2.13 时在 SYSTEM32 中有 SDL 1.2.8,那么您将遇到问题。通常,您希望将 SDL.dll 与开发的可执行文件放在同一目录中,并且在分发应用程序时,您总是希望将 SDL.dll 与 exe 放在同一目录中。

  1. 现在启动 MinGW Developer Studio 并开始一个新的空项目。

  2. 转到项目设置。

  3. 在链接选项卡下,在库字段中粘贴:mingw32、SDLmain、SDL。

  4. 将 source 新的源文件添加到项目中,并将以下代码粘贴到新的源文件中:

//

#include "SDL/SDL.h"
int main( int argc, char* args[] ) {
  SDL_Init( SDL_INIT_EVERYTHING ); //Start SDL
  SDL_Quit(); //Quit SDL
  return 0;
}
  1. 现在编译。如有必要,保存新的源文件并确保 SDL.dll 与可执行文件位于同一目录中。如果没有错误,你就完成了。否则返回并确保您没有跳过一步。
于 2011-11-29T07:49:58.067 回答