如何编译osip和exosip

本文提供了一份详细的osip2与exosip在Windows环境下使用VC6.0进行编译的过程指南,包括环境搭建、源文件配置及常见问题解决方法。

osip的编译:

假如你现在采用的是D盘(本人采用libosip2-2.2.0,VC6.0,Windows XP):
1.在D盘上新建一个osip文件夹D:\osip;
2.把libosip2-x.x.x文件夹下的include文件夹整个拷到E盘的osip文件夹里;
3.新建VC工程,选Win32 Dynamic-Link Library,Project name:osipparser2,
Location:D:\OSIP\,然后选An empty DLL project,
接着在 Tools\options\Directories\include files设置如下:
C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
D:\OSIP\INCLUDE
按如上设置即可。
注:以上Project\Setting按默认设置。
platform sdk一定要放到最上面,否则会出错。
4.删除新建的vc工程的默认的source files和header files,将..\libosip2-x.x.x\src\osipparser2\
里面的所有*.c和*.h文件拷到D:\osip\osipparser2\目录下,即和*.dsw和*.dsp文件放一起。
5.把..\libosip2-x.x.x\platform\windows\osipparser2.def
文件拷到E:\osip\osipparser2\文件夹下。
6.在vc工程中加入这些文件(.c,.h,.def)
编译即可得到.lib和.dll库文件

osip2的编译采用同样的步骤,但在第三步时要在Project\Setting中打开一个宏OSIP_MT
如果还有找不到文件和无法解析符号的问题很可能是响应的宏没有打开或者没有包含响应的库

exosip的编译

步骤也是和上面一样的,只要将需要用到的宏和库包含进去就没问题。查找应该包含哪些宏和库可以在
exosip原始包的相应的工程文件中找到,方法是(以osipparser2为例):
..\libosip2-2.2.0\platform\windows找到osipparser2.dsp文件用记事本或者其他文本编辑器打开,查
看相应的debug选项,找到需要打开的宏和要包含的库。然后在vc工程中加入即可。

以下是osipeXosip交叉编译到Android的方法: ### 环境准备 需要安装Android NDK,并配置好环境变量。同时,创建一个Android.mk文件用于编译配置,示例如下: ```makefile APP_PROJECT_PATH := $(call my-dir)/../ APP_STL:=gnustl_static APP_ABI := armeabi-v7a APP_PLATFORM := android-16 ``` 这里 `APP_PROJECT_PATH` 指定项目路径,`APP_STL` 选择静态库,`APP_ABI` 选择目标架构,`APP_PLATFORM` 选择目标Android平台版本。 ### osip2库编译 下载 `libosip2-3.5.0.tar.gz` 并解压,进入目录后进行配置编译: ```bash cd libosip2-3.5.0/ ./configure --enable-static make ``` 完成osip2库的编译后,可将osip2的头文件库添加到系统默认搜索目录下,示例命令如下: ```bash ln -s /home/runoob/work/my_project/sip/libosip2-3.5.0/include/osip2 /usr/include/osip2 ln -s /home/runoob/work/my_project/sip/libosip2-3.5.0/include/osipparser2/ /usr/include/osipparser2 ln -s /home/runoob/work/my_project/sip/libosip2-3.5.0/src/osip2/.libs/libosip2.so /usr/lib/libosip2.so ln -s /home/runoob/work/my_project/sip/libosip2-3.5.0/src/osipparser2/.libs/libosipparser2.so /usr/lib/libosipparser2.so ``` ### eXosip编译 进入eXosip目录,进行配置编译: ```bash cd ../open/libsip/libexosip2-5.1.0 chmod +x configure ./configure --disable-openssl CFLAGS="-Wl,-rpath,./" OSIP_CFLAGS="-I/opt/gb/open/libsip/osip/include" OSIP_LIBS="-L/opt/gb/open/libsip/osip/lib -losip2 -losipparser2" --prefix=/opt/gb/open/libsip/exosip make -j8 make install ``` 其中,`--disable-openssl` 表示禁用openssl,`CFLAGS`、`OSIP_CFLAGS` `OSIP_LIBS` 用于指定相关的编译链接选项,`--prefix` 指定安装路径。 ### 应用程序编译 编译基于osipexosip库的代码时,需要添加以下命令(静态编译): ```bash -I/usr/local/sunxi/include -L/usr/local/sunxi/lib -leXosip2 -losipparser2 -losip2 -lpthread -ldl -lresolv -static ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值