live555工程建立与调试
Live555是一款开源的RTSP服务器,下载地址http://www.live555.com/liveMedia/public/
下载下来的代码只有源文件,没有工程文件。那么如何使用VS 调试live555的源代码呢,下面将一步一步进行介绍。
使用的编译环境为win7 + vs2008
第一步打开vs2008,新建一个解决方案,目录为解压之后的代码目录,名称为live555,类型为win32 控制台程序
这样会生成一个空的解决方案,并且会有一个工程为live555
第二步,在解决方案中,新添加几个工程名为BasicUsageEnvironment, groupsock,liveMedia,UsageEnvironment
第三步,分别往几个空的工程中添加.hh与.cpp文件
BasicUsageEnvironment 工程对应的代码目录为BasicUsageEnvironment
groupsock工程对应的代码目录为groupsock
live555工程对应的代码目录为liveMedia
liveMedia工程对应的代码目录为liveMedia
UsageEnvironment工程对应的代码目录为UsageEnvironment
分别将这几个目录中.hh与.cpp添加到对应工程的Header Files 与Source Files文件夹中
第四步: 添加头文件目录
整个工程的依赖关系如下:
1 . live555这个工程使用到了其他所有工程,所以要添加所有工程的.h文件目录
添加方法:右击live555工程,在Configuration Properties / C/C++ / General 中找到Additional Include Directories
添加如下的目录
..\..\BasicUsageEnvironment\include;
..\..\liveMedia\include;
..\..\mediaServer;
..\..\groupsock\include;
..\..\UsageEnvironment\include;
这里一定要使用相对路径,不然更换一个目录就会编译不过
2 . BasicUsageEnvironment工程, 添加头文件目录
..\..\BasicUsageEnvironment\include;
..\..\UsageEnvironment\include;
..\..\groupsock\include;
3. groupsock工程,添加头文件目录
..\..\UsageEnvironment\include;
..\..\groupsock\include;
4. livemedia工程,添加头文件目录
..\..\liveMedia\include;
..\..\groupsock\include;
..\..\UsageEnvironment\include;
5. UsageEnvironment工程,添加头文件目录
..\..\UsageEnvironment\include;
..\..\groupsock\include;
第五步,设置编译依赖
编译时,由于各个工程会调用别的工程的函数,所以要设置编译依赖
右击解决方案,选择project dependencies。
选择live555, 将其他几个工程勾选上。表示在最后连接阶段,需要用到其他几个工程生成的库文件。
另外,代码里面没有导入win32的网络库,所以编译时会产生很多错误,可以在NetCommon.h头文件中添加
#pragma comment( lib, "ws2_32.lib"), 这样就没问题了
到此,工程就已经建好了,应该可以直接调试运行起来。
live555工程建立与调试的更多相关文章
- Davinci DM6446开发攻略——DSP开发工程建立
前段时间一直忙一个项目,同时在生活上时时提防和抵抗中国地沟油.国外核心转基因调和油.大豆油.色拉油.大米玉米.可怕的喂药鱼.药水泡农药喷无虫咬的青菜,所以没时间打理自己的博客,让开发攻略停顿了一段时间 ...
- Eclipse中STM32工程建立步骤
前段时间一直在折腾linux系统上STM32的开发,网上一顿搜,费劲九牛二虎之力终于把环境搭好了(现在都有点忘了,后面再折腾环境搭建一定要写个教程,今天先不写了). 自从环境搭好之后,就基本抛弃MDK ...
- Quartus II——工程建立和常用设置
Quartus ii是针对Altera FPGA的一款EDA软件,在此以一个led闪烁工程来简单说一下基本操作: 一.注意事项 Quartus ii最大的注意事项就一点:工程名称以及工程里面的文件名称 ...
- springcloud工程建立 父工程+公用子模块+微服务提供模块
建立 Java Working Set:工程多的时候可以展开收缩,方便管理 切换到Package Explorer视图,并点击视图右侧下箭头,选择Working Sets,如下图: 建立父工程,将后续 ...
- Lattice 的 DDR IP核使用调试笔记之工程建立
DDR3的IP核的使用相当重要,尤其是对视频处理方面. 下面接收DDR3 的IP 核的生成步骤. 1. 选择DDR IP核的生成路径.名字以及哪种语言之后就可以设置DDR IP 的参数了. 2.选择存 ...
- Modelsim——工程建立和常用设置
Modelsim是一款优秀的FPGA仿真软件,这里记录一下Modelsim的基本使用. 一.联合仿真 联合仿真,即Quartus ii自己调用Modelsim,Modelsim自动出现仿真波形. 1. ...
- Maven工程的Web调试
1.添加Server,将Web工程和Tomcat关联起来: 1)Windows->Show views->Other-->Servers,将会在下方弹出Server的窗口,然后右键添 ...
- 工程建立多个source folder
在工程中,想在建立多个source filder,总是报错,报错信息是 Cannot nest 'GzEdu/src/c' inside 'GzEdu/src'. To enable the nest ...
- 工程无法正常调试运行unknown failure at android.os.Binder.execTransact
同事正常使用的工程,放到另电脑上,开后可以正常编译,但是无法安装调试到手机上,始终提示错误 新建一个工程正常. 最后通过把开发工具升级到最新版本解决.
随机推荐
- spool_sqlldr
--0.制表符chr(9) 换行符chr(10) 回车符chr(13) windows下批处理.bat linux下批处理.shset echo offset feedback offset page ...
- js数据结构与算法——二叉树
function BinaryTree(){ var Node = function(key){ this.key = key; //值 this.left = null; //左箭头 this.ri ...
- 如何选择 Apache Tomcat 与 JDK 版本
Apache Tomcat Version
- 01-初识MySQL数据库
一.数据库概述 1.什么是数据 描述事物特征的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字.图片,图像.声音.语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机.如: name ...
- Javascript执行上下文和执行栈
什么是执行上下文? 执行上下文就是当前JavaScript代码被解析和执行时所在环境的抽象概念,JavaScript中运行任何的代码都是在执行上下文. 什么是执行栈? 执行栈,在其他编程语言中也被叫做 ...
- 2018-2019-2 20165206 网络攻防技术 Exp5 MSF基础应用
- 2018-2019-2 20165206<网络攻防技术>Exp5 MSF基础应用 - 实验任务 1.1一个主动攻击实践,如ms08_067; (1分) 1.2 一个针对浏览器的攻击,如 ...
- Ubuntu18.10下配置PHP7.2 + Apache2 + Mysql5.7
方案1:集成解决方案 1.lnmphttps://lnmp.org/ 2.xampphttps://www.apachefriends.org/zh_cn/index.html 3.oneinstac ...
- Electron 项目在 Mac 下复制和粘贴快捷键失效的解决办法
公司的一个项目需要开发跨平台,由于整个项目完全由我一个人开发,本人也是初次接触 Electron,开发过程中遇到了不少坑,同样的代码 Windows 下复制和粘贴没有问题,Mac 下复制和粘贴失效,在 ...
- 小游戏canvas直接操作ImgaeData时的几个优化点
前不久在处理一个canvas绘图需求时,经过不断测试优化,将重绘一帧的时间由400ms降低至20ms左右,基本满足了要求.特此记录一下优化方向. 设备环境:Android,360*720,pixelR ...
- UOJ#375. 【ZJOI2018】迷宫
原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ375.html 题解 首先,我们可以建出一个 k 个点的自动机,第 i 个点表示当前数对 k 取模为 i- ...