第1课(上) - 开始使用SDL · 在Code::Blocks中使用SDL


更新时间:2012年6月21日


1)首先你需要下载SDL头文件和二进制文件。
你可以在SDL的官方网站上找到它们, 点此进入下载页

向下滚动到Development Libraries部分,下载Mingw32开发包。

打开gz压缩包,里面应该有个tar压缩包。
打开tar压缩包 ,里面应该有一个文件夹。
将这个文件夹拷贝到你喜欢的任意地方。在本教程中,我把它放在C:\根目录

2)启动Code:Blocks,然后进入设置菜单里的编译器和调试器

3)单击搜索目录选项卡中的编译器选项卡,单击添加

然后将你解压出来的SDL目录中的“include”文件夹加入列表中。




4)然后在连接器选项卡下面添加SDL目录中的“lib”文件夹:



5)现在你需要将SDL目录中“bin”文件夹下的SDL.dll拷贝到你将要建立工程的地方。在编译程序时,你需要将SDL.dll和编译生成的exe放在同一个目录中。

另外,你也可以将SDL.dll拷贝到 “C:\WINDOWS\SYSTEM32”目录下,这样虽然SDL.dll与你的SDL程序不在同一个目录下,但程序仍能找到它。当然,如果你在使用64位的Windows系统,你就得把dll放于“C:\Windows\SysWOW64”目录中。

可是,这样处理存在一个问题:如果你有多个使用不同版本SDL库的应用程序,这会导致版本冲突。 如果你将SDL 1.2.8放于System32中,而应用程序使用的是1.2.13,这必然会导致问题。通常情况下,你需要把SDL.dll和你开发的可执行程序放在同一个目录下,并且当你发布你的应用程序时,你总是需要将SDL.dll与exe放在同一个目录下。

6)现在启动Code::Blocks并创建一个新的空工程。
然后将工程保存在你希望保存的位置。我知道Code::Blocks有一个SDL工程的模板,但我个人觉得那比手动设置更麻烦。

7)接着,点击工程菜单下的属性按钮。

8)生成目标选项卡下,设置类型为"图形界面程序"。这是为了让程序启动时不弹出控制台窗口。

9)再次进入编译器和调试器设置,在连接器设置选项卡下,将以下命令粘贴到其他连接器选项方框中:

-lmingw32 -lSDLmain -lSDL

10)添加一个新的源文件到工程中,并粘贴以下代码:
#include "SDL/SDL.h"
int main( int argc, char* args[] ) 
{ 
    //启动SDL
    SDL_Init( SDL_INIT_EVERYTHING );
    
    //退出SDL 
    SDL_Quit();
    
    return 0;
} 
保存该源文件并编译整个项目。如果没有发生错误,你就成功了。否则,请查看前面的步骤并确保每步都做好了。再次检查一下SDL.dll是否放到了exe所在文件夹或System32文件夹中。
另外补充一句,在你刚刚下载的压缩包中,有一个“doc”子文件夹,其中包含了SDL的文档。

我非常推荐您将文档解压到某一个地方,以便查阅。


下一部分: 在屏幕上显示一张图片