1.安装包准备
osip2:http://www.antisip.com/download/exosip2/
eXosip2:http://www.antisip.com/download/exosip2/
媒体流:http://www.antisip.com/download/mediastreamer2/
最新版本分别是:libosip2-5.0.0.tar.gz,libexosip2-5.0.0.tar.gz
环境:x86_64 ubuntu18.04
2. 编译+安装(注意权限问题,权限不够,在前面+sudo去执行)
1)解压 tar -zxvf libosip2-5.0.0.tar.gz 或者 libexosip2-5.0.0.tar.gz,进入libosip2-5.0.0或者libexosip2-5.0.0中去,两个库的编译步骤一模一样
【重点注意】:如果自定义安装目录,则两个库的指定安装目录需要一样。不管是否自定义安装目录,都需要先编译安装libosip2-5.0.0.tar.gz,再编译安装 libexosip2-5.0.0.tar.gz,原因是编译后者需要依赖前者的库。
2) cc=/usr/bin //指定编译工具目录;如果使用交叉编译工具编译,则设置为交叉编译工具的路径
3)./configure --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --prefix=/home/qinhong/code/sip/my_lib/
参数:
--build: --build=x86_64-linux-gnu
--host: --host=x86_64-linux-gnu
--target:--target=x86_64-linux-gnu
--prefix: 安装目录 /home/qinhong/code/sip/my_lib/ 为我指定的一个目录
--disable-static: 用于指定不是静态编译,只编译动态库*.so。
【注意】:不加 --disable-static如果不加这个配置项,则默认静态和动态一起都编译,编译出静态库和动态库*.a,*.so。
4) make clean //配置有改动,在make前需要make clean
make
【注意】:在编译libexosip2-5.0.0库下面的时候,会出现下面的错误
【需要安装】:apt-get install libssl1.0-dev
5) make install
【注意】:如果上面配置的时候没有 --prefix这个配置项,则默认安装到/usr/local/lib,反之,则编译出来的库安装在prefix指定目录的库中。
3.sip_reg
经过上面编译后,eXosip2会生成一个eXosip2文件,此文件为应用的一个例子
cd libexosip2-5.0.0/tools
为了使sip_reg程序能够正常调用“osip2+eXosip2”的功能,这里需要手动指定共享库路径“/usr/local/lib”
export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH
./sip_reg
表示正常的。
如果不能执行./sip_reg去正常调用“osip2+eXosip2”的功能,则需要添加共享库
默认的库:export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH
自定义的库:export LD_LIBRARY_PATH=/home/qinhong/code/sip/my_lib/:$LD_LIBRARY_PATH