一、簡介
SDL是一個用C編寫的跨平台的多媒體庫,它通過OpenGL和Direct3D,提供了針對音頻、視頻、鍵盤、鼠標、控制桿及3D硬件的低級別的訪問接口。它在MPEG播放軟件、模擬器以及許多游戲中得到廣泛的應用,其中包含了獲得大獎的“文明:權力的呼喚”的Linux 版本。
參考:
http://www.libsdl.org/
二、編譯安裝
參考:
http://toutiao.com/a4450957327/
wget http://www.libsdl.org/release/SDL2-2.0.3.tar.gz
tar -zxvf SDL2-2.0.3.tar.gz cd SDL2-2.0.3 mkdir build cd build ../configure make make install
三、使用實例
example1.c
//Toggle line numbers
#include "SDL.h" int main(int argc, char* argv[]) { SDL_Window* window; SDL_Renderer* renderer; // Initialize SDL. if (SDL_Init(SDL_INIT_VIDEO) < 0) return 1; // Create the window where we will draw. window = SDL_CreateWindow("SDL_RenderClear", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 512, 512, 0); // We must call SDL_CreateRenderer in order for draw calls to affect this window. renderer = SDL_CreateRenderer(window, -1, 0); // Select the color for drawing. It is set to red here. SDL_SetRenderDrawColor(renderer, 255, 0, 0, 255); // Clear the entire screen to our selected color. SDL_RenderClear(renderer); // Up until now everything was drawn behind the scenes. // This will show the new, red contents of the window. SDL_RenderPresent(renderer); // Give us time to see the window. SDL_Delay(5000); // Always be sure to clean up SDL_Quit(); return 0; }
編譯
gcc example1.c -o example1 -I/root/workspace/exercise/languages/c/graph/sdl/SDL2-2.0.3/include -L/root/workspace/exercise/languages/c/graph/sdl/SDL2-2.0.3/build/build/.libs -lSDL2
運行