1. 了解 SDL 并搭建环境
认识SDL在我们初步学习了编程语言的知识过后,发现我们并不能控制图像,声音,键盘和手柄这些硬件。这是因为我们没有学习该语言调用这些硬件的API接口。这就是SDL能够提供的, SDL目前支持Windows/Linux/Mac/Android/iOS等等平台, 但是使用SDL前,我们需要在平台上安装对应平台的SDL库。export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/p
认识SDL
在我们初步学习了编程语言的知识过后,发现我们并不能控制图像,声音,键盘和手柄这些硬件。这是因为我们没有学习该语言调用这些硬件的API接口。
这就是SDL能够提供的, SDL目前支持Windows/Linux/Mac/Android/iOS等等平台, 但是使用SDL前,我们需要在平台上安装对应平台的SDL库。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/your/libSDL2.so
由于译者使用的是ubuntu, 所以可以比较简单的使用 apt 下载官方维护的 SDL环境。
sudo apt-get install libsdl2-*
安装了:
libsdl2-2.0-0 libsdl2-gfx-doc libsdl2-net-2.0-0
libsdl2-dev libsdl2-image-2.0-0 libsdl2-net-dev
libsdl2-doc libsdl2-image-dev libsdl2-ttf-2.0-0
libsdl2-gfx-1.0-0 libsdl2-mixer-2.0-0 libsdl2-ttf-dev
libsdl2-gfx-dev libsdl2-mixer-dev
库名 | 简介 | 下载路径 | 备注 |
---|---|---|---|
libsdl2 | 基础库 | github | |
libsdl2-gfx | 图形支持包 | github | 可选 |
libsdl2-image | png、jpg等图片的支持包 | github | |
libsdl2-mixer | 多声道混音器 | github | |
libsdl2-net | 网络支持包 | github | |
libsdl2-ttf | 字体加载器 | github | gitee |
其他的linux版本如果没有编译好的环境,大家可以通过 官网 或github 下载编译库, 。
下载源码后,在项目目录下使用下面的命令编译。
./configure
make all
make install
SDL通过库链接的方式供大家调用, 库的内容包含头文件(*.h),还有库文件(静态库 *.a, 动态库 *.so)文件。
在编译应用程序的时候,需要让编译器知道包含了 SDL_Init 这类 SDL 函数接口的 头文件的路径. Linux 上,你可以配置 c 语言(C_INCLUDE_PATH), c++语言(CPLUS_INCLUDE_PATH)。也可以通过对应的编译工具提供的配置来设置头文件查找路径。
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/path/to/your/SDL2.h
export CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/path/to/your/SDL2.h
在链接过程中,我们需要让编译器知道 库文件的路径。可以通过设置 LD_LIBRARY_PATH 全局变量来设置,当然也可以根据你的项目管理工具来管理。
如果有什么错误,请大家指出,谢谢!
注:笔者是linux系统的支持者,使用的环境是ubuntu20.04, 可能内容转译更加切合linux开发者。
参考
更多推荐
所有评论(0)