pjsip学习笔记之一 –pjsip库编译及使用
2016-07-30 23:14
344 查看
最近出于兴趣,想学习下开源的sip协议栈,然找了很多文章,依然没有找到想要的答案。下面就pjsip的编译及使用进行说明:
pjsip编译
从pjsip官网()下载最新的源码,将其解压到linux下。
1) cd pjsip-xx
2) ./configure 此处采用默认配置,若想进行一些配置,请查阅官网说明,此处主要是让一个新手能够快速上手,故不做深入分析。
3) 确认无误后执行 make dep&&make&&make install 4) 若无误则表示安装成功,pjlib生成的库文件位于/usr/local/lib,为了减少链接多个库文件,pjsip工程会生成一个配置文件/usr/local/lib/pkgconfig/libpjproject.pc。后续将会用到,其内容如下:
pjsip库的使用
作为一个新手,面对如此一个工程,真不知如何下手才好,总想有一个入门的使用示例能够指导,此处列出了官方的一个示例说明如何构建自己的工程。
1) myapp.cpp
2) makefile
3) 将/usr/local/lib/pkgconfig/libpjproject.pc拷贝至你的工程,即代码路径下
4) 编译即可。
2016/7/30
pjsip编译
从pjsip官网()下载最新的源码,将其解压到linux下。
1) cd pjsip-xx
2) ./configure 此处采用默认配置,若想进行一些配置,请查阅官网说明,此处主要是让一个新手能够快速上手,故不做深入分析。
3) 确认无误后执行 make dep&&make&&make install 4) 若无误则表示安装成功,pjlib生成的库文件位于/usr/local/lib,为了减少链接多个库文件,pjsip工程会生成一个配置文件/usr/local/lib/pkgconfig/libpjproject.pc。后续将会用到,其内容如下:
# Package Information for pkg-config prefix=/usr/local exec_prefix=${prefix} libdir=/usr/local/lib includedir=/usr/local/include Name: libpjproject Description: Multimedia communication library URL: http://www.pjsip.org Version: 2.5 Libs: -L${libdir} -lpjsua2-i686-pc-linux-gnu -lstdc++ -lpjsua-i686-pc-linux-gnu -lpjsip-ua-i686-pc-linux-gnu -lpjsip-simple-i686-pc-linux-gnu -lpjsip-i686-pc-linux-gnu -lpjmedia-codec-i686-pc-linux-gnu -lpjmedia-i686-pc-linux-gnu -lpjmedia-videodev-i686-pc-linux-gnu -lpjmedia-audiodev-i686-pc-linux-gnu -lpjmedia-i686-pc-linux-gnu -lpjnath-i686-pc-linux-gnu -lpjlib-util-i686-pc-linux-gnu -lsrtp-i686-pc-linux-gnu -lresample-i686-pc-linux-gnu -lgsmcodec-i686-pc-linux-gnu -lspeex-i686-pc-linux-gnu -lilbccodec-i686-pc-linux-gnu -lg7221codec-i686-pc-linux-gnu -lpj-i686-pc-linux-gnu -lssl -lcrypto -lm -lrt -lpthread -lasound Cflags: -I${includedir} -I/usr/local/include -DPJ_AUTOCONF=1 -O2 -DPJ_IS_BIG_ENDIAN=0 -DPJ_IS_LITTLE_ENDIAN=1
pjsip库的使用
作为一个新手,面对如此一个工程,真不知如何下手才好,总想有一个入门的使用示例能够指导,此处列出了官方的一个示例说明如何构建自己的工程。
1) myapp.cpp
#include <pjlib.h> #include <pjlib-util.h> #include <pjmedia.h> #include <pjmedia-codec.h> #include <pjsip.h> #include <pjsip_simple.h> #include <pjsip_ua.h> #include <pjsua-lib/pjsua.h> int main() { printf("test lib ok \n"); return 0; }
2) makefile
# If your application is in a file named myapp.cpp or myapp.c # this is the line you will need to build the binary. all: myapp myapp: myapp.cpp $(CC) -o $@ $< `pkg-config --cflags --libs libpjproject` clean: rm -f myapp.o myapp
3) 将/usr/local/lib/pkgconfig/libpjproject.pc拷贝至你的工程,即代码路径下
4) 编译即可。
2016/7/30
相关文章推荐
- Linux学习笔记——如何在交叉编译时使用共享库
- Linux学习笔记——如何在交叉编译时使用共享库
- QNX学习笔记-使用脚本编译qnx代码,不用IDE也能编译代码
- PJSIP学习笔记——从simple_pjsua.c示例程序了解PJSUA-LIB的基本使用流程
- 安卓学习笔记---Android反编译工具jadx的使用
- PHP7 学习笔记(七)如何使用zephir编译一个扩展记录
- 『阿男的Gradle学习笔记』 *02*使用Gradle编译Java项目
- 使用androidNDK编译ffmpeg2.2 学习笔记
- c语言学习笔记(12)条件编译使用分析
- Linux学习笔记——怎样在交叉编译时使用共享库
- Verilog学习笔记12:使用多核CPU协同编译
- OK6410 Linux开发环境搭建--编译以及ubuntu的使用方法学习笔记
- PJSIP学习笔记——从simple_pjsua.c示例程序了解PJSUA-LIB的基本使用流程
- [Emacs学习笔记]使用Emacs写c语言并编译运行
- C语言学习笔记13——条件编译使用分析
- spark学习笔记:使用maven编译spark
- 【Gradle 简介】Gradle 构建编译工程学习笔记和使用总结
- linux下使用eclipse编译、链接、动态库的学习笔记
- Cocos2dx学习笔记34 使用tolua++编译pkg,从而创建自定义类让Lua脚本使用
- PJSIP学习笔记——从simple_pjsua.c示例程序了解PJSUA-LIB的基本使用流程