ubuntu 使用 cmake 方式源码编译 SDL2

说明

想在 ubuntu 下源码方式编译 SDL2,生成 SDL2 的 lib 库,静态库与动态共享库,release 版本

  • 编译环境: ubuntu 20.04
  • SDL 版本:当前 SDL github 最新版本,SDL2 分支

获取 SDL2 源码

  • SDL 的官方网站 https://www.libsdl.org/

  • 通过 SDL 的官方网站,了解到获取 SDL 的源码,可以通过 github

git clone https://github.com/libsdl-org/SDL.git

  • 由于当前 SDL 的主线(master 分支)为 SDL3,因此可以切换 git 分支到 SDL2

git checkout SDL2

cmake 编译

  • 切换 SDL git 仓库到 SDL2 分支后,创建一个编译目录,用于存放编译文件,比如在 SDL 目录下,创建一个 sdl2_build 目录
bash 复制代码
cd SDL
mkdir sdl2_build
cd sdl2_build

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PWD/install ..
make -j8
make install
  • -DCMAKE_BUILD_TYPE=Release 表示编译 Release 版本的 SDL2 lib 库,否则 Debug 版本的 SDL2 库会很大。

  • -DCMAKE_INSTALL_PREFIX=$PWD/install 表示 lib 的安装路径,为当前路径下的 install 目录,设置安装目录,可以获取【干净】的 lib 产物目录,而不是默认直接安装到系统的目录下。

  • .. 表示上一级是 SDL 源码的目录,因为当前执行 cmake 的目录是 SDL/sdl2_build

查看 SDL2 编译产物

  • 执行 make install 后, SDL2 编译的产物(lib 库、头文件等),放在了制定的安装目录下

  • SDL2 lib 库编译完成

小结

  • 在 ubuntu 下编译 SDL2 库还是挺方便的,当然可以直接使用 sudo apt install libsdl2-dev 的方式安装 SDL2 库。

  • SDL2 库可以用于 ubuntu 下 LVGL 的图形显示【驱动】部分

相关推荐
欧云服务器3 天前
怎么让脚本命令可以同时在centos、debian、ubuntu执行?
ubuntu·centos·debian
智渊AI3 天前
Ubuntu 20.04/22.04 下通过 NVM 安装 Node.js 22(LTS 稳定版)
ubuntu·node.js·vim
The️3 天前
Linux驱动开发之Read_Write函数
linux·运维·服务器·驱动开发·ubuntu·交互
再战300年3 天前
Samba在ubuntu上安装部署
linux·运维·ubuntu
qwfys2003 天前
How to install golang 1.26.0 to Ubuntu 24.04
ubuntu·golang·install
木尧大兄弟3 天前
Ubuntu 系统安装 OpenClaw 并接入飞书记录
linux·ubuntu·飞书·openclaw
小虾爬滑丫爬3 天前
ubuntu上设置Tomcat 开机启动
ubuntu·tomcat·开机启动
老师用之于民3 天前
【DAY25】线程与进程通信:共享内存、同步机制及实现方案
linux·c语言·ubuntu·visual studio code
小虾爬滑丫爬3 天前
Ubuntu 上设置防火墙
ubuntu·防火墙
林开落L4 天前
解决云服务器内存不足:2 分钟搞定 Ubuntu swap 交换区配置(新手友好版)
运维·服务器·ubuntu·swap交换区