SDL2的使用 |
您所在的位置:网站首页 › sdl2教程书籍 › SDL2的使用 |
目录 1.系统环境:ubuntu 16.04 64位 2.SDL2介绍 3.下载 4.编译、安装 5.设置环境变量 6.测试SDL 7.参考 1.系统环境:ubuntu 16.04 64位 Linux fly-vm 4.15.0-142-generic #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux 2.SDL2介绍Simple DirectMedia Layer 是一个跨平台开发库,旨在通过 OpenGL 和 Direct3D 提供对音频、键盘、鼠标、游戏杆和图形硬件的低级访问。它被视频播放软件、模拟器和流行游戏使用,包括Valve的获奖目录和许多Humble Bundle游戏。 SDL 正式支持 Windows、Mac OS X、Linux、iOS 和 Android。可以在源代码中找到对其他平台的支持。 SDL 是用 C 编写的,在本机上与 C++ 一起使用,并且有适用于其他几种语言的绑定,包括 C# 和 Python。 SDL 2.0 在zlib 许可下分发。此许可证允许您在任何软件中自由使用 SDL。 3.下载官网地址:Simple DirectMedia Layer - Homepage 源码下载地址(SDL version 2.0.14):https://www.libsdl.org/release/SDL2-2.0.14.tar.gz 4.编译、安装 fly@fly-vm:~/workSpace/SDL2$tar -zxvf SDL2-2.0.14.tar.gz fly@fly-vm:~/workSpace/SDL2$cd SDL2-2.0.14/ fly@fly-vm:~/workSpace/SDL2/SDL2-2.0.14$./configure --prefix=$PWD/_instal fly@fly-vm:~/workSpace/SDL2/SDL2-2.0.14$make && make install fly@fly-vm:~/workSpace/SDL2/SDL2-2.0.14$cd _install/ fly@fly-vm:~/workSpace/SDL2/SDL2-2.0.14/_install$ ls bin include lib share fly@fly-vm:~/workSpace/SDL2/SDL2-2.0.14/_install$ tree . ├── bin │ └── sdl2-config ├── include │ └── SDL2 │ ├── begin_code.h │ ├── close_code.h │ ├── SDL_assert.h │ ├── SDL_atomic.h │ ├── SDL_audio.h │ ├── SDL_bits.h │ ├── SDL_blendmode.h │ ├── SDL_clipboard.h │ ├── SDL_config.h │ ├── SDL_cpuinfo.h │ ├── SDL_egl.h │ ├── SDL_endian.h │ ├── SDL_error.h │ ├── SDL_events.h │ ├── SDL_filesystem.h │ ├── SDL_gamecontroller.h │ ├── SDL_gesture.h │ ├── SDL.h │ ├── SDL_haptic.h │ ├── SDL_hints.h │ ├── SDL_joystick.h │ ├── SDL_keyboard.h │ ├── SDL_keycode.h │ ├── SDL_loadso.h │ ├── SDL_locale.h │ ├── SDL_log.h │ ├── SDL_main.h │ ├── SDL_messagebox.h │ ├── SDL_metal.h │ ├── SDL_misc.h │ ├── SDL_mouse.h │ ├── SDL_mutex.h │ ├── SDL_name.h │ ├── SDL_opengles2_gl2ext.h │ ├── SDL_opengles2_gl2.h │ ├── SDL_opengles2_gl2platform.h │ ├── SDL_opengles2.h │ ├── SDL_opengles2_khrplatform.h │ ├── SDL_opengles.h │ ├── SDL_opengl_glext.h │ ├── SDL_opengl.h │ ├── SDL_pixels.h │ ├── SDL_platform.h │ ├── SDL_power.h │ ├── SDL_quit.h │ ├── SDL_rect.h │ ├── SDL_render.h │ ├── SDL_revision.h │ ├── SDL_rwops.h │ ├── SDL_scancode.h │ ├── SDL_sensor.h │ ├── SDL_shape.h │ ├── SDL_stdinc.h │ ├── SDL_surface.h │ ├── SDL_system.h │ ├── SDL_syswm.h │ ├── SDL_test_assert.h │ ├── SDL_test_common.h │ ├── SDL_test_compare.h │ ├── SDL_test_crc32.h │ ├── SDL_test_font.h │ ├── SDL_test_fuzzer.h │ ├── SDL_test.h │ ├── SDL_test_harness.h │ ├── SDL_test_images.h │ ├── SDL_test_log.h │ ├── SDL_test_md5.h │ ├── SDL_test_memory.h │ ├── SDL_test_random.h │ ├── SDL_thread.h │ ├── SDL_timer.h │ ├── SDL_touch.h │ ├── SDL_types.h │ ├── SDL_version.h │ ├── SDL_video.h │ └── SDL_vulkan.h ├── lib │ ├── cmake │ │ └── SDL2 │ │ ├── sdl2-config.cmake │ │ └── sdl2-config-version.cmake │ ├── libSDL2-2.0.so.0 -> libSDL2-2.0.so.0.14.0 │ ├── libSDL2-2.0.so.0.14.0 │ ├── libSDL2.a │ ├── libSDL2.la │ ├── libSDL2main.a │ ├── libSDL2main.la │ ├── libSDL2.so -> libSDL2-2.0.so.0.14.0 │ ├── libSDL2_test.a │ ├── libSDL2_test.la │ └── pkgconfig │ └── sdl2.pc └── share └── aclocal └── sdl2.m4 9 directories, 90 files 5.设置环境变量pc(package configure)是包(库)配置文件,保存在PKG_CONFIG_PATH=/usr/gpephone//lib/pkgconfig::/usr/lib/pkgconfig。pc文件保存了该库的头文件、库所在的路径信息。GCC等编译器编译时,比如编译某个工程用到glib-2.0这个库,pkg-config会按照PKG_CONFIG_PATH中的路径进行搜索glib-2.0.pc,然后把lib-2.0.pc作为参数传给GCC,那么GCC就可以找到该库了。 需要重新设置 PKG_CONFIG_PATH 和LD_LIBRARY_PATH 环境变量 在/etc/profile文件中加入: export PATH=$PATH:/home/fly/workSpace/SDL2/SDL2-2.0.14/_install/lib export PATH=$PATH:/home/fly/workSpace/SDL2/SDL2-2.0.14/_install/bin export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/fly/workSpace/SDL2/SDL2-2.0.14/_install/lib/pkgconfig" # 使环境变量生效 source /etc/profile #### Makefile创建软链接的命令 .PHONY:all link unlink mk_cmake_dir link_bin link_pc link_m4 link_cmake SRCDIRS = $(PWD) DSTDIRS = /usr MKDIR = mkdir -p RM = rm -rf FILE_BIN = sdl2-config FILE_M4 = sdl2.m4 FILE_PC = sdl2.pc DIR_CMAKE = lib/cmake/SDL2 all:link link_bin link_pc link_m4 link_cmake mk_cmake_dir: sudo $(MKDIR) /usr/lib/cmake ### 在/usr/include/目录下为SDL2创建头文件目录软链接 ### 在/usr/lib目录下,为SDL2链接库创建软链接 link: @echo ">>>>make links for the files of include && lib. make links for the files of bin. make links for the files of pc. make links for the files of m4. make links for the files of cmake. |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |