在如何初始化libosip2站点上的theres程序初始化osip库 https://www.gnu.org/software/osip/doc/html/group__howto0__initialize.html
#include <winsock2.h>
#include <Time.h>
#include <stdio.h>
#include <stdlib.h>
#include <osip2/osip.h>
#include <osipparser2/osip_parser.h>
#include <string.h>
int main()
{
int i;
osip_t *osip;
i=osip_init(&osip);
if (i!=0)
return -1;
}
我正在尝试运行此代码,但它不起作用, 库版本5.0.0
错误:
||=== Build: Debug in cos2 (compiler: GNU GCC Compiler) ===|
obj\Debug\main.o||In function `main':|
C:\Users\emergency\Documents\analizer\cos2\main.cpp|14|undefined reference to `osip_init'|
||error: ld returned 1 exit status|
||=== Build failed: 2 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
答案 0 :(得分:0)
这是因为你没有链接二进制文件osip.o
答案 1 :(得分:0)
要与库链接,您需要在命令行中指定它。
请注意libosip2生成两个库,您必须同时链接它们才能同时使用解析器(libosipparser2)和sip引擎(libosip2)。
确切的命令行取决于您使用的平台,编译器,如果您链接到静态库或动态库,也可能会有所不同。
使用GCC和动态链接,它应该是这样的:
-L/install-directory-for-libosip2-libs/ -losipparser2 -losip2
-L / install-directory-for-libosip2-libs / 参数指的是库可用的目录。