其他分享
首页 > 其他分享> > Window下利用VS2008编译eXosip2-3.6.0

Window下利用VS2008编译eXosip2-3.6.0

作者:互联网

说明:网上的查到的一般都是eXosip有静态编译,这种方法编译出来的lib库有局限性,如在Qt+MingW下就编译不过,

  所以还是编译成动态库的方式比较合适。

一、下载libosip2-3.6.0和libeXosip2-3.6.0

  1)http://download.savannah.gnu.org/releases/exosip/libeXosip2-3.6.0.tar.gz

  2)http://download.savannah.gnu.org/releases/osip/libosip2-3.6.0.tar.gz

二、编译osip2

  1)解压libosip2-3.6.0.tar.gz到E:\opensource目录下,更改libosip2-3.6.0\platform\vsnet\osip2.def 文件,在文件末尾追加

    osip_transaction_set_naptr_record @138

  2)更改libosip2-3.6.0\platform\vsnet\osipparser2.def 文件,在文件末尾追加

    osip_realloc @416

    osip_strcasestr @417

    __osip_uri_escape_userinfo @418

  3)进入libosip2-3.6.0\platform\vsnet目录,用VS2008直接打开osip.sln文件,项目自动转换

  4)先编译osipparser2,再编译osip2,最后在libosip2-3.6.0\platform\vsnet\Debug DLL下生成库文件:

    osip2.lib

    osip2.dll

    osipparser2.lib

    osipparser2.dll

三、编译eXosip2

  1)解压libeXosip2-3.6.0.tar.gz到E:\opensource目录下,更改libeXosip2-3.6.0\platform\vsnet\eXosip2.def文件,在文件末尾追加

    eXosip_call_set_reference
    eXosip_call_build_initial_invite
    eXosip_call_send_initial_invite
    eXosip_call_build_request
    eXosip_call_build_ack
    eXosip_call_send_ack
        eXosip_call_build_refer
        eXosip_call_build_info
        eXosip_call_build_options
        eXosip_call_build_update
        eXosip_call_build_notify
        eXosip_call_send_request
        eXosip_call_build_answer
        eXosip_call_send_answer
        eXosip_call_terminate
        eXosip_call_build_prack
        eXosip_call_send_prack
        eXosip_call_get_referto
        eXosip_call_find_by_replaces

  2)进入libeXosip2-3.6.0\platform\vsnet\目录,用VS2008直接打开eXosip.sln文件,项目自动转换

  3)右键工程,修改几个属性

  1、常规,癣配置类型设置成动态库

  

  2、C\C++常规,将osip的头文件libosip2-3.6.0\include包含进来

  

 

   3、C/C++ -—> 预处理器,将预处理器定义的中HAVE_OPENSSL_SSL_H删除掉

  

  4、链接器—>常规,将输出文件改为$(OutDir)\$(ProjectName)2.dll

  

 

  5、链接器—>输入—>附加依赖项:增加依赖库引用:Dnsapi.lib;Iphlpapi.lib;Ws2_32.lib;osip2.lib;osipparser2.lib;exosip.lib

   

  6、链接器—>输入—>模块文件定义,改为eXosip2.def

  

  7、上述设置修改完成后,编译生成eXosip2.lib和eXosip2.dll,再加上之前已经编译生成的osip2.lib、osip2.dll、osipparser2.lib、

    osipparser2.dll,就可以进行sip开发了。

 

标签:VS2008,lib,3.6,Window,call,build,libosip2,eXosip
来源: https://www.cnblogs.com/zhangnianyong/p/16123330.html