从源安装kurento详解

首先当然是去官网clone官方的入口项目,具体方法可自行查看官网文档,下面主要说的是项目clone下来后,编译可能缺少的依赖在哪里.

另外声明,当前使用的环境为ubuntu18.04的桌面版

1:安装java环境, 安装maven,从apt安装就可以了
2:编译kurent-module-creator项目,进入在该项目后,通过maven打包,命令如下
mvn install
3:然后把kurent-module-creator源码中的script文件夹下的脚本文件复制到/usr/bin,把生成到target中的所有jar文件复制到/usr/lib
4:编译KMS-CAMKE-UTIL目录,首先跟目录下cmake,然后进入build文件夹make,然后make install
完整make install 后 可以看到很多.cmake的文件被安装到了cmake应用程序的默认文件夹中,这时候再把kurento-module-creator中的FindKurentoModuleCreator.cmake文件复制到这个目录.
5:编译kmsjsoncpp的模块. 需要1个kmsjsoncpp的库,这个到kurento的官网下只能找到jsoncpp的项目,需要下载后切换到kms的分支最新的版本.
下面提供kmsjsoncpp的git的路径(已经fork到个人的库)
git clone https://github.com/ywcai/jsoncpp.git
查看所有分支git branch -a
切换到分支git checkout -b  origin/kms-6.3.2
查看切换后分支 是否切换成功
然后通过
cmake .
make  
make install
6:编译KMS-JSONRPC
apt install libboost-all-dev(把所有的都直接安装了 ,免的单独安 后面有需要其他依赖又去找)
OK,这个时候可以进入KMS-JSONRPC项目

camke .

make &&make install 
7 当然上面说的组件,是可以有直接安装的源不用自己编译的.但如果需要修改这些源码,也可以通过上面的方式自己编译
现在可以开始进入下载的入口项目根目录进行主程序所需要依赖的下载和服务器的编译安装,安装钱,先添加kurento的存储库

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5AFA7A83

# Get Ubuntu version definitions
source /etc/upstream-release/lsb-release 2>/dev/null || source /etc/lsb-release

# Add the repository to Apt
sudo tee "/etc/apt/sources.list.d/kurento.list" >/dev/null <<EOF
# Kurento Media Server - Nightly packages
deb [arch=amd64] http://ubuntu.openvidu.io/dev $DISTRIB_CODENAME kms6
EOF

sudo apt-get update

 

 

8 进入kms-omni-build目录
Cmake,看看还缺什么库或其他东西,却的话camke会提示

另外核心的几个子项目最好不要用官方打好包的源,否则就失去了从源码安装的意义,服务器核心功能的处理主要是在ksm-core和ksm-element的子项目中
以下是kms-core依赖
apt install kms-cmake-utils 
apt install kms-jsonrpc-dev //以上这两个可以直接安装官方大号包的源,当然也可以按照上面的方式从源码安装.
apt install kurento-module-creator 
apt install libgstreamer1.5-dev
apt install libboost-all-dev //这里为了方便,直接就全安装了.

apt install libsigc++-2.0-dev libvpx-dev uuid-dev

以下是kms-element依赖
apt install ffmpeg//2选1  安装ffmepg即可

//以下这些gst的包都是作者维护的gstreamer分支,如果要修改可能会比较麻烦,如果有BUG最好联系作者处理了.
apt install gstreamer1.5-nice
apt install gstreamer1.5-plugins-bad gstreamer1.5-plugins-good gstreamer1.5-x libgstreamer-plugins-base1.5-dev
apt install libglibmm-2.4-dev libnice-dev libsigc++-2.0-dev libsoup2.4-dev libssl1.0-dev 
apt install openwebrtc-gst-plugins-dev
 

//如果只做媒体转发,这个没什么用,但也的加进来编译

以下是kms-filters
apt install  libopencv-dev

启动项目 kurento-mdedia-server 所需要的依赖
apt install libwebsocketpp-dev

 
 
好了,接下来可以在你的IDE中编译运行了. 不需要在去运行源码中提供的编译脚本

当然如果你使用正好也是vscode, launch.json配置如下

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
                    // "--logs-path=/usr/jdsj/log/", 如果需要设置日志保存路径,则加载下面的args中,这里为了调试,没有选择存日志.
    "version": "0.2.0",
    "configurations": [        
        {
            "name": "cpp - Build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            "program": " ${workspaceFolder}/build/kurento-media-server/server/kurento-media-server",
            "args": [
                "--gst-debug=3,Kurento*:4,kms*:4,sdp*:4,webrtc*:4,*rtpendpoint:4,rtp*handler:4,rtpsynchronizer:4,agnosticbin:4",
                "--conf-file=${workspaceFolder}/build/config/kurento.conf.json",
                "--modules-config-path=${workspaceFolder}/build/config",
                "--modules-path=$PWD:/usr/lib/x86_64-linux-gnu/kurento/modules",
                "--gst-plugin-path=${workspaceFolder}",
                "--gst-disable-registry-fork",
                "--gst-disable-registry-update"
            ],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}

 


 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值