VS2013编译eXosip2-5.0.0

可以先参考[VS2013编译eXosip2-4.1.0]文章进行编译
https://blog.csdn.net/dgyanyong/article/details/50818101

 

下面罗列一下额外需要修改的地方:

 

一、5.0版本缺少eXrefer_api.c文件,从4.1版本中找到eXrefer_api.c,并添加到相应的位置。

二、exosip协议栈刷新订阅不好用问题
参考文章:https://blog.csdn.net/songxiao1988918/article/details/78698103
修改eXosip/src/jdialog.c
_eXosip_subscription_dialog_find函数,

#if 0 // modify start 修改刷新订阅、取消订阅不好用的问题

    if ((*js)->s_id == sid)

      return OSIP_SUCCESS;

#else

    if ((*js)->s_id == sid) {

        *jd = (*js)->s_dialogs;

        return OSIP_SUCCESS;

    }

#endif // modify end

三、使用eXosip的工程应包含如下lib[链接器->输入->附加依赖项]:
ws2_32.lib
Dnsapi.lib
Qwave.lib
delayimp.lib
osip2.lib
osipparser2.lib
libcares.lib
eXosip.lib

 

缺少delayimp.lib会出现
错误 1 error LNK2001: 无法解析的外部符号 ___HrLoadAllImportsForDll@4

缺少Qwave.lib会出现
错误 2 error LNK2001: 无法解析的外部符号 _QOSCreateHandle@8
错误 3 error LNK2001: 无法解析的外部符号 _QOSCloseHandle@4
错误 4 error LNK2001: 无法解析的外部符号 _QOSAddSocketToFlow@24
错误 5 error LNK2001: 无法解析的外部符号 _QOSRemoveSocketFromFlow@16

四、[链接器->输入->忽略特定默认库]需要输入LIBCMT,否则会出现下面错误:
错误 1 error LNK2005: __invalid_parameter 已经在 msvcrtd.lib(MSVCR120D.dll) 中定义
错误 2 error LNK2005: __invoke_watson 已经在 msvcrtd.lib(MSVCR120D.dll) 中定义
错误 4 error LNK1169: 找到一个或多个多重定义的符号


五、4.1版本和5.0版本相比,订阅相关函数名有变化
变更点可以比较 eX_subscribe.h
5.0版本初始化订阅使用eXosip_subscription_build_initial_subscribe函数。
4.1版本函数中的subscribe变更为5.0版本中的subscription。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值