pjsip编译及使用说明

2010年03月04日 星期四 14:11

当前使用的 pjproject 版本为1.5.5,开发环境为VC6,其它VS高级版本应该类似

一、编译前准备
首先生成文件 pjlib/include/pj/config_site.h,即使内容为空也可以,具体使用方法参见同一目录下的 config_site_sample.h

二、开发环境需求
1、添加微软的 Platform SDK 和 DirectX9 SDK 到VC6中的Include和Lib目录下,完成后的目录顺序如下:
Platform SDK 版本为2003,由微软官网下载
DirectX9 SDK 版本为 Update (February 2005),下载地址为
http://download.microsoft.com/download/a/c/d/acdfb557-266f-4af4-8673-6ab8009b4ddd/dxsdk_apr2005.exe
[Include files]
D:/Develop/DirectX9SDK/Include
D:/Program Files/Microsoft Visual Studio/VC98/INCLUDE
D:/Program Files/Microsoft Visual Studio/VC98/MFC/INCLUDE
D:/Program Files/Microsoft Visual Studio/VC98/ATL/INCLUDE
D:/Develop/PlatformSDK/include
[Library files]
D:/Develop/DirectX9SDK/Lib/x86
D:/Develop/PlatformSDK/Lib
D:/Program Files/Microsoft Visual Studio/VC98/LIB
D:/Program Files/Microsoft Visual Studio/VC98/MFC/LIB
2、若要支持 TLS,则还需添加 OpenSSL 开发包,考虑到目前还用不着这一块,暂未添加

三、编译
打开工程目录下的 pjproject.dsw,设 pjsua 为活动工程,分别编译其Debug和Release版本。成功后,各个库分别生成在相应目录下,为方便以后的使用,可将这些LIB库分别复制到工程根目录下的LIB目录中。利用下面的批处理来快速获取:
copy ../pjlib/lib/*.lib *.lib
copy ../pjlib-util/lib/*.lib *.lib
copy ../pjnath/lib/*.lib *.lib
copy ../pjmedia/lib/*.lib *.lib
copy ../pjsip/lib/*.lib *.lib
copy ../third_party/lib/*.lib *.lib
若要编译例子程序,则设 samples 为活动工程,分别编译其Debug和Release版本。成功后,则会生成在目录 pjsip-apps/bin/samples 下

四、使用
1、为提高工程在不同PC上编译时的可移植性,要在工程选项(而非开发环境)中添加包含目录(当前假设应用程序目录和 pjproject 在同一目录下)
* 以下头文件目录放在 C/C++ / Preprocessor / Additional include directories 下:
../pjproject/pjlib/include,../pjproject/pjlib-util/include,../pjproject/pjnath/include,../pjproject/pjmedia/include,../pjproject/pjsip/include
* 以下LIB库目录放在 Link / General / Object/library modules 下:
../pjproject/lib/*vc6-debug.lib 或 ../pjproject/lib/*vc6-release.lib
2、在程序源文件中添加相应的头文件,根据实际需要添加,以下包含了PJ库导出的全部API
#include <pjlib.h>
#include <pjlib-util.h>
#include <pjnath.h>
#include <pjsip.h>
#include <pjsip_ua.h>
#include <pjsip_simple.h>
#include <pjsua-lib/pjsua.h>
#include <pjmedia.h>
#include <pjmedia-codec.h>
3、在工程选项中添加宏定义 PJ_WIN32=1,切记不能在源文件中添加
4、在工程选项中链接系统的Lib库,如 IPHlpApi.lib wsock32.lib ws2_32.lib ole32.lib dsound.lib
5、值得注意的是,发布不同版本需要依赖不同的底层库,如下所示
Debug: multithreaded, statically linked with LIBC,(i.e. the /MTd flag)
Release: multithreaded, dynamically linked with MSVCRT,(i.e. the /MD flag)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Linux PJ-SIP是一个开源的软电话/ VoIP库,它可以用于开发基于SIP协议的通信应用程序。编译PJ-SIP库时,您可以按照以下步骤进行操作: 1. 下载PJ-SIP:您可以从PJ-SIP官方网站(http://www.pjsip.org)下载最新版本的PJ-SIP库。解压缩下载的文件。 2. 安装依赖项:在编译PJ-SIP之前,您需要安装一些依赖项。以Ubuntu为例,您可以使用以下命令安装依赖项: ``` sudo apt-get install build-essential python-dev libssl-dev libncurses5-dev libxml2-dev libjansson-dev ``` 3. 配置编译参数:进入PJ-SIP的目录,并使用以下命令生成编译配置文件: ``` cd <pj-sip-directory> ./configure --enable-shared --disable-sound --disable-video --disable-opencore-amr --disable-resample ``` 4. 编译和安装:使用以下命令进行编译和安装: ``` make dep make sudo make install ``` 5. 测试安装:编译完成后,您可以使用示例应用程序进行测试。进入PJ-SIP的pjsip-apps/bin目录,运行以下命令启动一个测试客户端: ``` ./pjsua-x86_64-unknown-linux-gnu ``` 以上是简要的步骤,用于在Linux上编译PJ-SIP库。请注意,具体的编译过程可能会根据您的操作系统和环境而有所不同。在执行编译过程时,请确保您的系统满足所有依赖项,并仔细阅读PJ-SIP的官方文档,以获取更多详细信息。 ### 回答2: Linux平台上编译PJSIP的步骤如下: 1. 首先,确保你的Linux操作系统已经安装了必要的编译工具,如gcc、g++等。你可以通过在终端中输入以下命令来检查它们是否已安装: ``` gcc --version g++ --version ``` 2. 下载PJSIP源代码。你可以从PJSIP的官方网站上下载最新的稳定版本或开发版本。使用wget命令来下载: ``` wget http://www.pjsip.org/release/2.10/pjproject-2.10.tar.bz2 ``` 3. 解压源代码包。使用以下命令来解压下载的源代码包: ``` tar -xvjf pjproject-2.10.tar.bz2 ``` 4. 进入解压后的目录: ``` cd pjproject-2.10 ``` 5. 配置编译选项。运行以下命令来生成编译配置文件: ``` ./configure ``` 6. 编译源代码。使用make命令来编译源代码。这个过程可能需要一些时间: ``` make ``` 7. 安装编译好的库文件。使用以下命令将编译好的库文件安装到系统中: ``` sudo make install ``` 8. 编译PJSUA示例程序。运行以下命令来编译PJSUA示例程序: ``` cd pjsip-apps/src/ make pjsua ``` 9. 编译和运行其他需要的示例程序。你可以使用类似的命令来编译和运行其他示例程序,如PJSUA2、PJSIP测试套件等。 这些步骤将会在Linux平台上编译PJSIP并生成所需的库文件和示例程序。你可以根据自己的需求进行特定的配置和编译选项。希望以上的解答能够对你有所帮助。 ### 回答3: 要编译Linux下的PJSIP,你需要按照以下步骤进行操作: 1. 下载PJSIP软件包:可以从PJSIP官方网站上下载最新的软件包,也可以使用命令行工具如wget进行下载。 2. 解压软件包:使用解压缩工具如tar解压下载的PJSIP软件包。进入解压后的目录。 3. 设置编译环境:在终端中输入"./configure" 命令,这会自动检测系统环境并生成相应的Makefile。 4. 进行编译:在终端中输入"make" 命令进行编译。这会执行Makefile文件中的编译规则,然后将生成的可执行文件和库文件拷贝到指定目录。 5. 安装PJSIP:在终端中输入"sudo make install" 命令,这会将编译生成的文件安装到系统目录中。 6. 配置PJSIP:在PJSIP安装目录下的"pjsua" 子目录中,可以找到一个名为"pjsua.conf" 的配置文件。你可以根据自己的需求修改该文件,配置PJSIP的各项参数。 7. 测试PJSIP使用终端中的"pjsua" 命令启动PJSUA应用程序,并通过命令行进行测试。 编译PJSIP可能会因为环境配置不正确或者依赖包缺失而出现错误。如果遇到错误,可以根据错误提示进行解决,可能需要安装一些依赖包或者调整系统环境配置。 值得提醒的是,这只是一个简单的介绍,具体的编译步骤可能因为系统环境的不同而有所差异。因此,在进行PJSIP编译之前,建议先阅读官方文档或者相关教程,以便正确地进行操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值