ZLMediaKit 是一款高性能的流媒体服务器,适用于实时音视频传输等场景。在 CentOS 9 系统上编译 ZLMediaKit 需要正确处理依赖库和编译环境。本文将逐步指导您完成从系统配置到编译成功的全过程。
环境准备与依赖安装
首先,更新系统并安装基础编译工具和依赖库。执行以下命令安装必要包:
sudo yum -y install gcc gcc-c++ libssl-dev libsdl-dev libavcodec-dev libavutil-dev ffmpeg git openssl-devel gcc-c++.x86_64 cmake

如果遇到包管理问题,可能是软件源未配置完整。在 CentOS 9 中,使用以下命令启用 EPEL 和 CRB 源:
sudo dnf install epel-release -y
sudo dnf config-manager --set-enabled crb
然后,安装关键依赖:
sudo dnf install -y gcc gcc-c++ cmake openssl-devel SDL-devel ffmpeg ffmpeg-devel
如果 ffmpeg 相关包仍缺失,可以添加 RPM Fusion 源:
sudo dnf install https://download1.rpmfusion.org/free/el/rpmfusion-free-release-9.noarch.rpm -y
sudo dnf install ffmpeg ffmpeg-devel cmake -y
在某些情况下,可能需要单独安装 gcc-c++:
sudo dnf install -y gcc-c++

完成依赖安装后,系统环境应满足编译要求。熟悉 Linux 运维 的基本操作有助于高效处理此类任务。
接下来,开始编译 ZLMediaKit。首先创建并进入工作目录:
mkdir -p /home/zenglg
cd /home/zenglg
git clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit
cd ZLMediaKit
# 千万不要忘记执行这句命令
git submodule update --init
mkdir build
cd build
cmake ..
make -j4

编译过程中可能会显示一些警告,例如:


这些警告通常不影响最终结果,但需确保无致命错误。

编译时间取决于系统性能,请耐心等待完成。
注意事项
- 编译前务必执行
git submodule update --init,以初始化子模块避免缺失代码。
- 使用
make -j4 可以加速编译,数字 4 表示并行作业数,可根据 CPU 核心数调整。
- 如果遇到依赖缺失,请根据错误信息安装相应包,或检查软件源配置。
完成编译后,ZLMediaKit 的可执行文件将生成在 build 目录中,可用于后续部署和测试。通过以上步骤,您可以在 CentOS 9 上成功搭建流媒体服务器基础环境。
|