VS2015下編譯libeXosip2-5.0.0
1) 下載原始碼解壓修改目錄名稱(版本為5.0.0)
http://www.antisip.com/download/exosip2/
https://c-ares.haxx.se/
解壓後修改為expsip osip c-ares,存放在同一個目錄下;
===========================================================================================================
2) 編譯(Windows)
進入exosip\platform\vsnet, 開啟eXosip.sln後會載入相關專案
注意事項:
libcares.vcxproj下加入三個檔案ares_platform.h,ares_platform.c,ares_create_query.c選項,否則在呼叫生成庫時會出現
error LNK2019:無法解析的外部符號_ares_getplatform,該符號在函式_get_DNS_Registry中被引用。
error LNK2019:無法解析的外部符號_ares_create_query,該符號在函式_ares_query中被引用。
去掉一些預定義(HAVE_OPENSSL_SSL_H,TSL_SUPPORT),不然在編譯的時候出現
error C1083: 無法開啟包括檔案: “openssl/opensslv.h”: No such file or directory
IntelliSense: 無法開啟 源 檔案 “tsc_socket_api.h”
IntelliSense: 未定義識別符號 “tsc_config”
在libexosip2-5.0.0.tar.gz出現一個缺失eXrefer_api.c檔案告警,可以從舊版本複製一份,也可以選擇刪除它;
===========================================================================================================
3) vs2010 需要修改專案屬性的工具集為 v100
===========================================================================================================
4) 工程增加相應系統庫,避免連結錯誤
Dnsapi.lib;Iphlpapi.lib;ws2_32.lib;eXosip.lib;osip2.lib;osipparser2.lib;Qwave.lib;libcares.lib;delayimp.lib;
缺少delayimp.lib, Qwave.lib會出現 dns等報錯;
例如:
error LNK2001: 無法解析的外部符號 ___HrLoadAllImportsForDll
===========================================================================================================
5) Linux下則參考 ./configure --help就按步驟完成;