Centos7.6编译ZLMediaKit

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

Centos7.6下编译ZLMediaKit

此篇文章由ZLMediaKit入门群中编译文档和网上的资料结合而成
入门群号690854210这篇仅讲述在Linux下如何编译
文章参考https://blog.51cto.com/mengix/2452395

Linux编译要用到工具如下

gcc https://ftp.gnu.org/gnu/gcc/
Cmake https://cmake.org/download/
libsrtp https://github.com/cisco/libsrtp/releases
OPENSSL https://github.com/openssl/openssl

安装一些编译需要的东西
yum install -y wget git vim unzip bzip2 net-tools gcc gcc-c++ pam-devel libselinux-devel zlib-devel gmp-devel mpfr-devel libmpc-devel make cmake tar

GCC

gcc版本我用的是默认的4.8.5版本最好用4.8以上版本以下的编译好像过不了因为要支持C++11

Cmake

首先清理Centos自带的2.8.x版本的cmake,可以先用cmake --version查看系统原先有没有有的话清理掉
yum erase cmake
从官网上下载cmake安装包最好是3.0.0以上版本我用的是3.18.3
将安装包到/usr/local/下面解压后进入
./bootstrap
可能会出现Could NOT find OpenSSL这是没有安装openssl的编译依赖项yum install -y openssl-devel解决
make -j4 && sudo make install
建立软链接
ln -s /usr/local/bin/cmake /usr/bin/
此时使用cmake --version出现版本信息即可

OpenSSL

系统自带的openssl 1.1.1m 版本不完整
https://www.openssl.org/source/openssl-1.1.1k.tar.gz
然后放到/home下解压
tar -xvzf openssl-1.1.1k.tar.gz
yum install -y zlib zlib-devel perl-CPAN
cd openssl-1.1.1k
./config shared --openssldir=/usr/local/openssl --prefix=/usr/local/openssl
make -j8 && make install
echo “/usr/local/lib64/” >> /etc/ld.so.conf
echo “/usr/local/openssl/lib” >> /etc/ld.so.conf
ldconfig
ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
openssl version -a

openssl: error while loading shared libraries: libssl.so.1.1出现以上错误时是库位置错误可参考文章
https://blog.csdn.net/weixin_43214644/article/details/125836859

libsrtp

cd /home
https://github.com/cisco/libsrtp/archive/refs/tags/v2.4.0.zip
解压进入
cd libsrtp-2.4.0
./configure --enable-openssl --with-openssl-dir=/usr/local/openssl
make -j8 && make install

ZLMediaKit

最后进入ZLMediaKit的编译
cd /home
git clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit
cd ZLMediaKit
git submodule update --init

以上是文档的内容我是看git上的wiki先git到本地再上传的不过也没什么区别以下是wiki的内容
#国内用户推荐从同步镜像网站gitee下载
git clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit
cd ZLMediaKit
#千万不要忘记执行这句命令
git submodule update --init

#修改Release
vim CMakeLists.txt
把14行 # 去掉
#set(CMAKE_BUILD_TYPE “Release”)

不过现在的版本好像没有这行我也没修改直接就编译成功了

mkdir build
cd build
mkdir -p /home/ZLMediaKit/release/linux/Debug
#编译Release 版本
cmake … -DENABLE_WEBRTC=true -DCMKAE_BUILD_TYPE=Release -DOPENSSL_ROOT_DIR=/usr/local/openssl -DOPENSSL_LIBRARIES=/usr/local/openssl/lib
cmake --build . --target MediaServer – -j 16

编译后的程序在
/home/ZLMediaKit/release/linux/Debug下面

以上仅仅是编译步骤正常使用还要安装ffmpegnodejdk等

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: centos