用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的话, ...
随机推荐
- PHP获取新插入的主键id
近期在做订单系统开发的时候遇到了此类情景,A表内插入后返回新插入的主键ID,然后用于B表插入数据并携带此id. 目前有几个方法总结 No1.每次插入数据之后返回A表内的最大值,但是对于多用户以及高并发 ...
- 【凡尘】---react-redux---【react】
一.Redux与组件 react-redux是一个第三方插件使我们在react上更方便的来使用redux这个数据架构 React-Redux提供connect方法,用于从UI组件生成容器组件,conn ...
- Dell Inspiron 620 / Vostro 260 BIOS 开启 AHCI 模式
1.Dell Vostro 260 台式机,WIN7 旗舰版 2.登陆 DELL 官方支持站点,获取 MS-A10.exe 安装文件 3.从网络中获取 AMIBCP.exe 工具,双击打开此程 ...
- 解决spring-boot配置文件使用加密方式保存敏感数据启动报错No decryption for FailsafeTextEncryptor. Did you configure the keystore correctly
spring-boot配置文件使用加密方式保存敏感数据 application.yml spring: datasource: username: dbuser password: '{cipher} ...
- windows环境下ElasticSearch6 安装head插件
转: https://blog.csdn.net/shubingzhuoxue/article/details/80998738 https://blog.csdn.net/camelcanoe/ar ...
- gevent-websocket初识
初试 from flask import Flask, request from geventwebsocket.handler import WebSocketHandler from gevent ...
- Java 工程师成神之路 | 2019正式版
本文为转载,原文见以下链接:https://mp.weixin.qq.com/s/4AMzq87V6eW3YPgE0mCdSw 1 基础篇 01 面向对象 → 什么是面向对象 面向对象.面向过程 面向 ...
- 级联Cascade
cascade分为两类: 1.JPA标准 2.Hibernate标准 JPA的方法使用JPA规范 如@OneToMany(cascade=CascadeType.ALL,mappedBy=" ...
- postgis创建空间数据库,导入shp数据
使用向数据库中导入数据
- python selenium 基本常用操作
最近学习UI自动化,把一些常用的方法总结一下,方便自己以后查阅需要.因本人水平有限,有不对之处多多包涵!欢迎指正! 一.xpath模糊匹配定位元素 武林至尊,宝刀屠龙刀(xpath),倚天不出(css ...