用VS2015编译pjsip的工程pjproject-vs14
先去官网下载最新的源码包,我用的版本是2.7.1 。
将源代码解压后,在路径:pjproject-3.7.1\pjlib\include\pj 中创建新文件config_site.h,内容如下:
#ifndef __CONFIG_SITE_H__
2 #define __CONFIG_SITE_H__ #define PJMEDIA_HAS_VIDEO 1
#define PJMEDIA_HAS_OPENH264_CODEC 1
#define PJMEDIA_HAS_LIBYUV 1
#define PJMEDIA_VIDEO_DEV_HAS_SDL 1
#define PJMEDIA_VIDEO_DEV_HAS_DSHOW 1
#define PJMEDIA_HAS_FFMPEG 1 #endif
- ffmpeg
去ffmpeg的一个编译站点https://ffmpeg.zeranoe.com/builds/ 下载最新的开发版本,我下载的是3.4.1 。
将它解压到pjproject-3.7.1下,ffmpeg的include和lib目录应该是在pjproject-3.7.1/ffmpeg-3.4.1-win32-dev下。
- SDL
去SDL官网https://www.libsdl.org/download-2.0.php下载SDL的编译版本,我下载的是2.0.7 。
将它解压到pjproject-3.7.1下,SDL的include和lib目录应该是在pjproject-3.7.1/SDL2-2.0.7下。
- OpenH264
去OpenH264官网下载源码,具体编译方法请参考另一帖《Windows下用VS2015+MSYS编译OpenH264》。
将源码解压到pjproject-3.7.1下,按照帖子里的方法去编译即可。编译完成后,openh264.lib的路径是在pjproject-3.7.1/openh264-master下。
- baseclasses
这个包用来生成strmbasd.lib和strmbase.lib,代码来源于Window 7 SDK,可以从这个链接下载https://www.microsoft.com/en-us/download/details.aspx?id=18950
将ISO文件加载到虚拟光驱,但你不必全部安装,只需要将setup下的WinSDKSamples安装即可,之后就可以在
C:\Program Files\Microsoft SDKs\Windows\v7.0\Samples\multimedia\directshow\baseclasses
中找到这个工程。
但事实上,pjproject-3.7.1中已经自带了这个源码,源码位置在pjproject-3.7.1\third_party\BaseClasses中,编译结果在pjproject-3.7.1\third_party\lib下。
可根据具体的编译需要使用。
-----------------------------------------------------------------------------------------------------------
至此,需要的编译环境基本上都有了,在开始编译前,还要修改下pjproject-vs14解决方案中的一些配置:
要在pjmedia、pjmedia-codec、pjmedia-videodev、pjsua这几个工程中中添加ffmpeg、SDL、OpenH264的include或lib路径。
右键点击工程->属性->配置中选择“所有配置”->C/C++->常规->附加包含目录中添加include路径;
右键点击工程->属性->配置中选择“所有配置”->链接器->常规->附加库目录中添加lib路径。
最后一个关键点是pjsua工程,要在链接器->输入->忽略特定默认库中添加libcmt.lib(release版本)或libcmtd.lib(debug版本),还要在链接器->命令行->其他选项中添加/SAFESEH:NO,忽略一个错误警告:error LNK2026 模块对于 SAFESEH 映像是不安全的。
That's all.
用VS2015编译pjsip的工程pjproject-vs14的更多相关文章
- ubuntu16.04 配置opensips服务器并编译pjsip测试
一.版本相关 1) ubuntu版本: 16.04 2) opensips版本:2.1.2 3) pjsip版本 :2.5.5 4) ffmpeg版本:3.3.4 5) sdl版本:2.0 6) vs ...
- Win7 下用 VS2015 编译最新 openssl(1.0.2j)包含32、64位debug和release版本的dll、lib(8个版本)
Win7 64位系统下通过VS2015编译好的最新的OpenSSL(1.0.2j)所有八个版本的链接库, 包含以下八个版本: 1.32位.debug版LIB: 2.32位.release版LIB: 3 ...
- 用VS2015编译sqlcipher
简介 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中.它是D.RichardHipp建立的公有领域项目.它的设计目标是嵌入式的,而且目前已经在很多嵌 ...
- [转][JSBSim]使用VS2015编译JSBSim
转自csdn原文:https://blog.csdn.net/yu_lei_/article/details/81463187 请大家去看原文,原文有图片和资源,本文仅供本人参考 权威参考:http: ...
- Windows下 VS2015编译RocksDB
VS2015编译RocksDB RocksDB 是一个来自 facebook 的可嵌入式的支持持久化的 key-value 存储系统,也可作为 C/S 模式下的存储数据库,但主要目的还是嵌入式.Roc ...
- Windows下 VS2015编译ForestDB
VS2015编译ForestDB ForestDB 是一个快速的 Key-Value 存储引擎,基于层次B +树单词查找树.由 Couchbase 缓存和存储团队开发. 1.下载forestdb源码 ...
- 使用vs2015编译、部署ssd-caffe(weiliu89版,CPU模式)
前因项目所需,须训练一个快速模型以实现目标物体的实时检测.历经多次实践,发现MobileNetSSD网络符合要求,故在本人工作PC上部署weiliu89版本的ssd-caffe以期用之训练项目要求之模 ...
- VS2015编译VLC2.2.1(under WIN7-64)<转>
概述: 感谢https://github.com/sunqueen/vlc-2.2.1.32-2013 这个工程,我的工作基本上都是基于它,我只是觉得他的工程设置不够清晰,重新做了一次.区别在于我的工 ...
- caffe搭建--caffe- win10 vs2015 编译(支持GPU)--注意在cmake的时候需要根据情况仔细修改配置
--http://blog.csdn.net/longji/article/details/60964998 注意: 在cmake的时候需要根据情况仔细修改配置,比如,如果gpu的能力不足3.0的话, ...
随机推荐
- pycharm2018.11最新激活码
第一步:先按下键盘的win + r ,然后复制c:\windows\system32\drivers\etc粘贴到对话框回车打开文件管理器: 第二步:打开hosts文件,将0.0.0.0 accoun ...
- Hbase各版本环境要求
1.HBase各版本JDK支持情况 HBase Version JDK 7 JDK 8 JDK 9 JDK 10 2.0 Not Supported yes Not Support ...
- QPainter绘制遇到的小问题
1.Qt绘图基础 (1)绘图需画笔和画布: QPainter 相当于Qt中的一个画笔,绘制时需要一块画布, Qt中扮演画布角色的组件为QPaintDevice和他的各个子类,如: QWidget, Q ...
- fcn训练及预测tgs数据集
一.背景 kaggle上有这样一个题目,关于盐份预测的语义分割题目.TGS Salt Identification Challenge | Kaggle https://www.kaggle.com ...
- Verilog编码规范与时序收敛
Verilog编码规范与时序收敛 没有优先级的时候,尽量用case 时钟选择
- 新建git仓库并与github同步
windows系统,GitExtentions. 如果在一个空目录克隆一个github仓库: 1. 在一个空目录下,点击右键,点击Clone 2. 设置: 3. 点击加载SSH密钥.参看 GitExt ...
- Java Swing 界面中文乱码问题解决(Idea环境)
编译(build)的时候和运行的时候使用同样的字符集就可以了.这里,我都设置为“UTF-8”.具体做当如下: File->Settings->Build...->Compiler,在 ...
- 用最简单的话告诉你什么是ElasticSearch
介绍 Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 L ...
- WPF设计界面不执行代码
一般在我们在设计WPF XAML界面时,XAML 引用一些后端的类.比如UserControl.Converter.MVVM,引用 xmlns:ALLUserControl="clr-nam ...
- ipython notebook 安装
pip install IPython pip install urllib3 pip install jupyter pip install numpy pip install matplotlib ...