编译、安装、使用openmcu

时间:2024-03-15 11:21:15

编译、安装、使用openmcu

    百度找到的关于openmcu-ru的教程和论坛实在有限,找到最好的一篇链接讲如何编译使用openmcu-ru就是下面这个链接了:https://blog.csdn.net/ndhui/article/details/50190969,这篇博客给了我不少启发,幸运的话走下来可以能安装成功了,不过不同编译环境的结果也是相差甚远的,所以我下面也趁着刚刚装成功赶紧给大家分享我的经验。

一、下载open-mcu

open-mcu下载路径:https://videoswitch.ru/

点击箭头位置,下载一个较新版本的

编译、安装、使用openmcu

进入github之后,点击绿色方框下载:

编译、安装、使用openmcu

然后把它拉到你的linux系统下,对了,我的环境配置是ubuntu16.4,版本基本影响不大;

二、安装openmcu的依赖环境

我把我的openmcu-master文件放置在/opt路径下,改名为openmcu(为了使得待会那些opemmcu_tool的编译出来的共享依赖库放在这里),然后在系统的路径下mkdir一个文件夹openmcu-tool,这个文件待会就是放置编译openmcu要用的依赖工具软件:

在开始之前先打开/opt/openmcu/README,里面会有该版本的openmcu的基础介绍,纯英文的,考验你的阅读能力时候到了

然后打开/opt/openmcu/INSTALL,查看安装的步骤,(无论是装什么开源库都好,都要养成这个习惯看官方文档,这个习惯很重要,记得不能偷这个懒)

接下来带你们看INSTALL里面关键的内容的第一部分:

OpenMCU-ru contains the following required libraries in the repository:
  * PTLib            - http://www.opalvoip.org
  * H323Plus         - http://www.h323plus.org
  * Sofia-SIP        - http://www.sofia-sip.sourceforge.net
  * libSRTP          - http://srtp.sourceforge.net/srtp.html
  * libzrtp          - http://zfoneproject.com/prod_sdk.html
  * libyuv           - http://www.code.google.com/p/libyuv

没错就是上面的依赖库都要安装,我之前就安装过前面的两个开源库了,所以就不需要安装了,关于PTLIB和H323Plus的教程参考这个https://blog.csdn.net/carl_cheer/article/details/45502463,接下来就是去各自的官网找安装包或者有些直接可以用apt-get install下载:

举个例子,Sofia-SIP,可以直接sudo apt-get install libsofia-sip-ua0,由于apt-get会自动帮我把路径写进环境变量里面了,就比较省心;

若是下载Sofia-SIP源代码的话,

1、”tar -zvxf 压缩包 “,解压到我的/opt/openmcu_tool里面

2、$./configure --prefix=/opt/openmcu   (设置安装路径)

3、$make && make install

 

不过这个先不管!!待会要用到的时候再来安装!!

要做的时候先安装下面的四个opemmcu_tool,去各自的官网找(这一步比较需要耐心和细心,链接我就不贴出来了,自己探索),至于为什么要装这些tool的原因可见  INSTALL 的 Requires,

    yasm-1.3.0,

            ——./configure --prefix=/opt/openmcu && make && make instal

    ffmpeg-2.8.3 (原则上只要大于0.10.4版本,课见INSTALL说明)

            ——  $export PATH=$PATH:/opt/openmcu/bin

                    $./configure --prefix=/opt/openmcu --enable-shared  && make &&make install

    x264-snapshot-20151204-2245 

 

            ——./configure --prefix=/opt/openmcu --enable-shared 

                    make &&make install

   libvpx-1.5.0
            ——./configure --prefix=/opt/openmcu
                    make && make install

接着看到INSTALL的第二部分

Use following lines to install build dependencies on Ubuntu:
  apt-get install gcc make flex bison autoconf automake pkg-config
  apt-get install libtool
  apt-get install libavcodec-dev
  apt-get install libavformat-dev
  apt-get install libswscale-dev
  apt-get install libfreetype6-dev
  apt-get install libssl-dev
  apt-get install libx264-dev

  apt-get install libvpx-dev

这个就直接简单,就直接跟着敲就行了,前面加个sudo即可。

三、编译安装openmcu

$cd /opt/openmcu/

$./configure -prefix=/opt/openmcu --disable-openssl

于是乎:

 

configure: error: avcodec headers not found! Install FFmpeg or Libav.

解决方法: 修改 configure 文件,修改如下:
PRODUCT=OpenMCU-ru  ==> PRODUCT=
PROG=openmcu-ru     ==> PROG=

重新执行命令

make
/usr/bin/ld: cannot open output file ./obj/: Is a directory(注意这里)
collect2: error: ld returned 1 exit status

make[1]: *** [all] Error 1

这的Error后面有可能是 2,不打紧

于是乎:
修改文件 /opt/openmcu/openmcu-ru/Makefile

PROG=    ==> PROG=openmcu-ru 

make install

现在查看/opt/openmcu/openmcu-ru/obj/目录下是否有openmcu-ru这个可执行文件:

如果是这样的话说明安装成功了:

编译、安装、使用openmcu

但如果是显示:

编译、安装、使用openmcu

这个时候就是最麻烦的时候,我在这卡住了足足一天,百度什么的都没什么收获,后来上了谷歌各种论坛查找才慢慢发觉是怎么回事~

四、编译、安装的关键之处

如果是上面这种情况的话,安装libsofia-sip-ua0即可,上面有说怎么做了

然后这个解决了之后有可能会跳出来说你缺少另外一个共享库,例如libyuv.so,我们可以一次性查找那些缺少的共享库:

/opt/openmcu0/openmcu-ru/obj$ ldd openmcu-ru 

    查看那些依赖库是   => Not Find,那些就是没有找到路径的共享库

首先去、opt/libs/路径里面查找,之前那四个tool的configure --prefix路径设置在/opt/openmcu那里就是为了这个,

找到之后把共享库的路径添加到环境变量中去:

两种方法:

一种是:
    需要更高的权限就使用sudo

    1. 将绝对路径写入 /etc/ld.so.conf:      

    $ sudo vi /etc/ld.so.conf

    像我在ld.so.conf这里添加的结果是:这是我添加的三条路径,这个要根据系统的情况而定!!

编译、安装、使用openmcu

        2. $sudo ldconfig

【补充】ldconfig是一个动态链接库管理命令,其目的为了让动态链接库为系统所共享!

另外一种是:
    直接在命令行中敲入:(不需要获取root权限,不过是暂时的,终端一关就配置没有了,不建议使用)
    $ export LD_LIBRARY_PATH=/opt/openmcu/:$LD_LIBRARY_PATH
    可以用echo $LD_LIBRARY_PATH查看。

如果一切都设置好的话,则是下面这样的,没有显示NO FOUND就行了

编译、安装、使用openmcu

OpenMcu的编译安装就说到这里,遇到问题暂时搞不出很失望很正常的,不过一定要相信“失望是有限的,希望是无限的”。

五、使用opoenmcu—ru

这里有两种命令:

命令«openmcu-ru(-wrapper)-x»在控制台模式下运行

命令«openmcu-ru(-wrapper)-d»以守护进程模式运行

在linux中运行成功之后显示如下:

编译、安装、使用openmcu

然后,可以在打开浏览器,输入你的HostIP:1420:(我下面的图片是在win用谷歌浏览器下打开的)

编译、安装、使用openmcu

如果觉得都是英文,很难受的话直接右边一键翻译:

编译、安装、使用openmcu

nice~enjoyyourself!