exosip2 build
Build eXosip on Win

1. download exosip
http://savannah.nongnu.org/projects/exosip/
2. download libcares and osip
decompress the files to self defined folder eXosip and rename the libexosip2-5.1.0 to eXosip(exosip\eXosip) ---the name defined in eXosip.sln project
windows: open the plateform vs project file: exosip\eXosip\platform\vsnet\eXosip.sln
you'll find libcares/osip2/osipparser2 projects missed.
libcares
https://c-ares.haxx.se/
decompress to exosip and rename it to c-ares(exosip/c-ares) --- the name defined in eXosip.sln project
osip:
http://savannah.gnu.org/projects/osip/ (include: osipparser2)
decompress to exosip and rename it to osip(exosip/osip) --- the name defined in eXosip.sln project
3. openssl add
open exosip\eXosip\platform\vsnet\eXosip.sln, and build it with vs2015
rebuild exosip, will show not found openssl include headers error, need add openssl include files.
Use eXosip in your project
1. add lib files to your project.
use the eXosip in you project , you will find there are many link error,
many of errors can easy to fix, find the link error function, and added the depency lib will ok.
dependency libs.
//
Crypt32.lib
Ws2_32.lib
Dnsapi.lib
libeay32MD.lib
ssleay32MD.lib
eXosip.lib
libcares.lib
osip2.lib
osipparser2.lib
//
2. fix libcares errors
but some of the error maybe confuse you, such as the libcares.lib link error.
1>LINK : warning LNK4098: 默认库“LIBCMTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
1>libcares.lib(ares_init.obj) : error LNK2019: 无法解析的外部符号 ares__getplatform,该符号在函数 get_DNS_Registry 中被引用
1>libcares.lib(ares_init.obj) : error LNK2019: 无法解析的外部符号 ares_strsplit,该符号在函数 set_search 中被引用
1>libcares.lib(ares_init.obj) : error LNK2019: 无法解析的外部符号 ares_strsplit_free,该符号在函数 ares_init_options 中被引用
1>libcares.lib(ares_query.obj) : error LNK2019: 无法解析的外部符号 ares_create_query,该符号在函数 ares_query 中被引用
1>C:\Users\E852640\Downloads\exosip\eXosipDemo\x64\Debug\eXosipDemoClient.exe : fatal error LNK1120: 4 个无法解析的外部命令
cause of those errors seemed libcares lost some of the functions.
maybe the eXosip project was added libcares project too long before, and didn't contain all of the latest source files.
fix: readd all the c-ares source code files and then rebuild it. or you can find which functions and files lost, and then add it.
exosip2 build的更多相关文章
- libeXosip2(3-1) -- eXosip2 INVITE and Call Management
eXosip2 INVITE and Call Management SIP messages and call control API Functions int eXosip_call_set_ ...
- 解决 Springboot Unable to build Hibernate SessionFactory @Column命名不起作用
问题: Springboot启动报错: Caused by: org.springframework.beans.factory.BeanCreationException: Error creati ...
- [WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform
eclipse maven clean install 报错 1. 修改properties-->resource-->utf-8仍然报错 2.修改项目pom.xml文件,增加: < ...
- 解决 Could not find com.android.tools.build:gradle 问题
今天拉同事最新的代码,编译时老是报如下错误: Error:Could not find com.android.tools.build:gradle:2.2.0.Searched in the fol ...
- 搭建TFS 2015 Build Agent环境(一)
Download the build agent Downloading the build agent is really simple. Navigate to your TFS control ...
- Go build constraints
Go语言有一个不(奇)错(葩)的设计,就是build constraints(构建约束).可以在源码中通过注释的方式指定编译选项,比如只允许在linux下,或者在386的平台上编译啊之类的:还可以通过 ...
- [异常解决] How to build a gcc toolchain for nRF51 on linux (very detailed!!!)
1.Install gcc-arm-none-eabi https://devzone.nordicsemi.com/tutorials/7/This link shows that developm ...
- Microsoft Build 2016 Day 2 记录(多图慎入)
Microsoft Build 2016 Day 1 记录 Microsoft Build 2016 进行到了第二天,我觉得这一天的内容非常精彩,因为主要和开发者相关
- Microsoft Build 2016 Day 1 记录
去年今日:Microsoft Build 2015 汇总 今年的 Bulid 时间是 3.30-4.1,第一天的主角主要是 Windows 10.人工智能.HoloLens.小娜等,详细介绍:3 分钟 ...
随机推荐
- mongodb切片配置方法
---------------------------------切片架构图-------------------------------------------------------------- ...
- 字典,set
字典 dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度 存取速度快 key-value存储方式,在放进去的时候,必须根据key算出v ...
- 157. [USACO Nov07] 奶牛跨栏(第三次考试大整理)
157. [USACO Nov07] 奶牛跨栏 输入文件:hurdles.in 输出文件:hurdles.out 简单对比 时间限制:1 s 内存限制:128 MB 译 by CmYkRg ...
- 容器适配器————priority_queue
#include <queue> priority_queue 容器适配器定义了一个元素有序排列的队列.默认队列头部的元素优先级最高.因为它是一个队列,所以只能访问第一个元素,这也意味着优 ...
- shell java应用启动脚本(app.sh)
#!/bin/sh # java服务中需要的jar文件或classpath路径,如业务程序.第三方jar文件log4j等 ShellAbsPath=$(cd "$(dirname " ...
- EasyUI datagrid动态加载json数据
最近做一个项目,要求是两张张表可能查找出10多种不同的结果集. 如果想只用一个表格就把全部的结果不同的显示出来那么就肯定不同使用固定的字段名字,要通过动态加载后台返回来的数据把它显示出来就必须动态加载 ...
- yanse
0E71F9 左上面蓝色 0EA8FF 左下面蓝色 498B54 右边绿色
- Java中String类中常用的方法
1.字符串与字符数组的转换 用toCharArray()方法将字符串变为字符数组 String str = "abcdef"; char c[] = str.tocharArray ...
- 微信小程序 API 网络(ajax)
网络 API 类似于 ajax 向服务器请求网络地址,唯一不同的是这个请求有很多的规则,且必须向服务器上请求,不能在本地请求 网络 发送请求: wx.request() 发起https网络请求 参数: ...
- 【后台管理系统】—— Ant Design Pro结合插件(一)
一.富文本braft-editor 安装并引用 npm install braft-editor --save import BraftEditor from 'braft-editor' impor ...