SDL游戏开发教程01(环境准备 mingw+eclipse)
本文中将要介绍的是:windows环境下eclipse for cpp +sdl+boost+mingw环境的搭建,主要参考lazyfoo.net上的介绍,网址http://lazyfoo. net/SDL_tutorials/lesson01/windows/eclipse/index.php 。该网站上还详细的介绍了其他环境下的配置方法,见http://lazyfoo.net/SDL_tutorials/lesson01/index.php ,如果你喜欢用别的环境来做SDL开发,可以参考其中的方法进行配置。
本人选择这套环境的理由:
Windows:没办法,平时在windows下的时间多
eclipse for cpp:希望自己做出来的游戏不需要修改代码,在windows和 linux下编译后都可以运行。
Mingw:windows版的gcc,eclipse for cpp在编译C++工程的时候要用它来编译代码。
Boost:boost库中有些函数和类非常有用,顺便学习一下boost。
注意:由于该系列教程中用到了BOOST库,如果你不使用本文介绍的环境,那么需要你自己到BOOST网站或者其他地方去找针对你的环境的boost库安装方法
工具准备:
1、 安装高于或者等于1.5版本的JRE。由于本人要经常做JAVA开发,所以我机器上安装的是JDK1.5,怎么安装这里就省略了。
2、 安装windows下的gcc:Mingw。在http://nuwen.net/mingw.html
这个网站上有编译好的Mingw最新版本。
本文使用的是mingw-3.14版本,上图中的两个包下载一个就够了,只是压缩格式不同而已。这个版本包含下图所示的一些库。其中boost、sdl都是最新的版本的了。
下载之后解压缩,然后放到C盘下(因为这是eclipse-cpp默认的mingw目录,这样可以避免配置的麻烦),同时配置环境变量,在PATH里面加上C:\MinGW\bin。最后的目录结构如下:
3、 安装eclipse for cpp:到eclipse 的官方下载页面http://www.eclipse.org/downloads/
下载eclipse ide for c/c++ developers的最新版本,如下图:
本教程中使用的是eclipse-cpp-ganymede-SR1-win32.zip
4、由于SDL和BOOST库已经包含在上面的mingw中了,这里就不用再安装配置了。关于SDL的详细信息可以访问http://www.libsdl.org/
,关于BOOST的详细信息可以访问http://www.boost.org/
。
C++开发环境测试:
通过上面的步骤,工具都已经准备好了,下面先写个hello world测试一下。
新建一个C++工程,注意工程的路径中不要包含汉字和空格,否则在调试的时候会报错。
点击完成后就有了下面的hello world代码,运行该工程,如果运行时报找不到可执行文件错误,则可以运行Project->clean或者build project生成exe文件。如果还遇到其他错误,请检查一下前面提到的是否配置正确或者留言来讨论。
SDL开发环境测试:
打开工程的属性对话框,找到下图所示的配置页面,点击
添加连接库
填mingw32,点击OK
重复上述步骤,依次添加SDLmain和SDL,最后结果如下图,点击OK完成配置
如果配置完成后工程报错,运行clean project,重新编译连接,如下图
将SDLTutorial.cpp中的代码换成如下代码:
#include "SDL/SDL.h"
int main( int argc, char* args[] )
{
SDL_Init( SDL_INIT_EVERYTHING ); //初始化SDL环境
SDL_Quit(); //退出SDL环境
return 0;
}
如果编译运行没有错误,则表示开发SDL所需要的相关库都准备好了
调试 :
由于上面介绍的mingw中不包含GDB,需要我们去mingw的网站上去下载一个gdb调试器,下载页面http://sourceforge.net/project/showfiles.php?group_id=2435
本教程中使用的是GDB6.8-3,下载下来后,将里面的两个exe文件解压到C:\MinGW\bin目录下。
打开调试配置页面(run->debug configurations…):
将两处标记中的选择去掉,第一处表示调试的时候是否在main函数开始的地方停住,第二处会导致
调试的时候在SDL的库文件中停住
。
到此为止,开发环境的配置工作已经全部完成。