main.c
#include <stdio.h> #include <stdlib.h> #include <SDL2/SDL.h> #include <GLES2/gl2.h> int main(int argc, char **argv) { SDL_Window *window = NULL; SDL_GLContext context = {0}; const GLubyte *version = NULL; SDL_Init(SDL_INIT_VIDEO); SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 2); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 0); window = SDL_CreateWindow("main", 0, 0, 320, 240, SDL_WINDOW_OPENGL); context = SDL_GL_CreateContext(window); version = glGetString(GL_VERSION); printf("Version:%s\n", version); SDL_GL_DeleteContext(context); return 0; }
編譯、執行
$ /opt/mini/bin/arm-linux-gnueabihf-gcc \ -I/opt/mini/arm-buildroot-linux-gnueabihf/sysroot/usr/include/SDL2 \ -lSDL2 -lSDL2_gfx -lSDL2_image -lSDL2_ttf -lSDL2_mixer -lGLESv2 \ main.c -o main # kill -STOP `pidof MainUI` # LD_LIBRARY_PATH=.:/config/lib:/customer/lib ./main Version:OpenGL ES 3.0 SwiftShader 4.1.0.7 # kill -CONT `pidof MainUI`