简介
H323Plus:用于开发使用 H.323 协议在基于分组的网络上进行多媒体通信的应用程序
PTLib:是一个库文件,提高平台的独立性,设计初衷是为了能让Openh323在Windows和Unix的,不属于一个应用程序
源码下载
https://www.h323plus.org/source/
安装
**版本控制 :**
GnuGK 5.9
H323Pluse 1.27.2
pTLib 2.10.9
PTLib
1.在/home目录下创建一个PTLib文件夹
mkdir ptlib
2.将下载好的压缩包文件放到该目录下并解压
mv /home/ptlib.2.10.9.tar.gz /home/ptlib
tar -vxf ptlib.2.10.9.tar.gz
3.进入解压目录编译,安装
cd /ptlib/ptlib.2.10.9
yum install -y gcc gcc-c++ make unzip zip git wget flex bison autoconf automake pkg-config
yum install -y libstdc++ libvorbis libvpx libogg libtheora freetype libjpeg-turbo
yum install -y yasm zlib bzip2 faac lame speex x264 XviD openjpeg15 opencore-amr
yum install -y SDL
./configure --enanle-sdl #生成makeflies文件
make #编译
make install #安装
Linux源码安装可参考:https://blog.csdn.net/qq_45175681/article/details/123199105?spm=1001.2014.3001.5502
4.检查是否安装成功
ptlib --version
H323Plus
1.创建文件夹,解压,可参考ptlib前两步
mkdir h323plus
mv /home/h3231.27.2.tar.gz /home/h323plus
tar -vxf h3231.27.2
2.进入文件夹,安装
./configure --enable-SDL
make
make install
运行sample
运行sample可检验H323Plus是否安装成功
- 进入h3231.27/samples/simple,开始编译
cd /root/h323plus/samples/simple
make
ls
操作情况
[root@host ~]# cd /root/h323plus/samples/simple
[root@host simple]# make
[CC] main.cxx
[LD] obj_linux_x86_64/simph323
[root@host simple]# ls
main.cxx Makefile simple_2005.vcproj simple_2010.vcxproj simple_2015.vcxproj simple.cbp
main.h obj_linux_x86_64 simple_2008.vcproj simple_2012.vcxproj simple_2015.vcxproj.filters
2.运行sample
[root@host obj_linux_x86_64]# ls
main.o simph323
[root@host obj_linux_x86_64]# ./simph323 -n -l
./simph323: error while loading shared libraries: libh323_linux_x86_64_.so.1.27.1: cannot open shared object file: No such file or directory
报错:
./simph323: error while loading shared libraries: libh323_linux_x86_64_.so.1.27.1: cannot open shared object file: No such file or directory
解决方法:
[root@host ~]# cd /root/h323plus/samples/simple/obj_linux_x86_64
[root@host obj_linux_x86_64]# ls
main.o simph323
[root@host obj_linux_x86_64]# ldd simph323
linux-vdso.so.1 => (0x00007ffed96fa000)
libh323_linux_x86_64_.so.1.27.1 => not found
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f8b70c7e000)
libpt.so.2.10.9 => not found
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f8b70a62000)
librt.so.1 => /lib64/librt.so.1 (0x00007f8b7085a000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f8b70656000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f8b7034f000)
libm.so.6 => /lib64/libm.so.6 (0x00007f8b7004d000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f8b6fe37000)
libc.so.6 => /lib64/libc.so.6 (0x00007f8b6fa69000)
/lib64/ld-linux-x86-64.so.2 (0x00007f8b70e98000)
唯独libh323_linux_x86_64_.so.1.27.1没有找到
1、首先打开/etc/ld.so.conf文件 2、加入动态库文件所在的目录:执行vi /etc/ld.so.conf,在"include
ld.so.conf.d/*.conf"下方增加"/usr/local/lib"。
3、保存后,在命令行终端执行:/sbin/ldconfig
-v;其作用是将文件/etc/ld.so.conf列出的路径下的库文件缓存到/etc/ld.so.cache以供使用,因此当安装完一些库文件,或者修改/etc/ld.so.conf增加了库的新搜索路径,需要运行一下ldconfig,使所有的库文件都被缓存到文件/etc/ld.so.cache中,如果没做,可能会找不到刚安装的库。
cp /etc/ld.so.conf /etc/ld.so.conf.bak
vim /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/lib
/sbin/ldconfig -v
ldconfig
再次查看依赖情况:ldd simph323
[root@host ~]# cd /root/h323plus/samples/simple/obj_linux_x86_64
[root@host obj_linux_x86_64]# ldd simph323
linux-vdso.so.1 => (0x00007ffdf17a9000)
libh323_linux_x86_64_.so.1.27.1 => /usr/local/lib/libh323_linux_x86_64_.so.1.27.1 (0x00007fdaed803000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fdaed5e9000)
libpt.so.2.10.9 => /usr/local/lib/libpt.so.2.10.9 (0x00007fdaed0fa000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fdaecede000)
librt.so.1 => /lib64/librt.so.1 (0x00007fdaeccd6000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fdaecad2000)
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fdaec7cb000)
libm.so.6 => /lib64/libm.so.6 (0x00007fdaec4c9000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fdaec2b3000)
libc.so.6 => /lib64/libc.so.6 (0x00007fdaebee5000)
/lib64/ld-linux-x86-64.so.2 (0x00007fdaee276000)
开始通话
[root@host obj_linux_x86_64]# ./simph323 -n -l
simple Version 1.27.1 by H323Plus on Unix Linux (3.10.0-1127.el7.x86_64-x86_64)
2020/11/05 08:46:57.326 0 (0) Version 1.27.1 by H323Plus on Unix Linux (3.10.0-1127.el7.x86_64-x86_64) with PTLib (v2.10.9 (svn:0)) at 2020/11/5 8:46:57.326
Available Video Drivers:
FakeVideo
Shm
YUVFile
FFMPEG
V4L2
Using video driver *
Local username: root
Silence compression is Disabled
Auto answer is 0
FastConnect is Disabled
H245Tunnelling is Enabled
H245QoS is Enabled
Jitter buffer: 50-250 ms
Sound output device: "Null Audio"
Sound input device: "Null Audio"
Codecs (in preference order):
Table:
G.711-ALaw-64k <1>
G.711-uLaw-64k <2>
UserInput/hookflash <3>
UserInput/basicString <4>
UserInput/dtmf <5>
UserInput/RFC2833 <6>
Set:
0:
0:
G.711-ALaw-64k <1>
G.711-uLaw-64k <2>
1:
UserInput/hookflash <3>
2:
UserInput/basicString <4>
UserInput/dtmf <5>
UserInput/RFC2833 <6>
Available Features:
Std9 QoS Monitoring-H.460.9
Std18 NatTraversal-H.460.18
Std19 NatTraversal-H.460.19
Std23 P2Pnat Detect-H.460.23
Std24 P2Pnat Media-H.460.24
Available NAT Methods:
STUN
H46019
H46024
GnuGk
Available Security:
SimpleCAT
SimpleMD5
TimeSync
Waiting for incoming calls for "root"
Press X to exit.
H323>
安装过程中出现的相关问题可参考主页其他问题