windows vs2019编译最新版本的live555版本

环境说明

本博客是使用windows VS2019编译live555最新版本的过程,最后编译成功,特记录一下,由于最新版本的live555使用了openssl库,因此对于一些新手来说,可能会花一些时间在编译上面,因此,本人希望刚刚入门的新同学不在环境上花费过多的时间上。live555版本选择的是2022.4.26的压缩包,如果不想学习这个编译过程,想直接学习项目,直接跳到最后,下载我编译好的源码即可。

编译过程

下载源码

源码地址,将源码解压保存。

创建解决方案

创建解决方案live555,并创建9个空的项目工程,项目工程名和live555的各个工程名保持一致,如下所示
在这里插入图片描述
其中WindowsAudioInputDevice,hlsPorxy,meidiaServer,proxyServer,testProgs为可选项目,但是通常mediaServer和testProgs一般是需要的,mediaServer是live555提供的媒体服务器程序,testProgs提供了大量的客户端测试程序(比如testRTSPClient),使用这2个项目就可以进行音视频文件的测试工作。

UsageEnvironment,BasicUsageEnvironment,groupsock,liveMedia是4个库文件,必不可少。供客户端和服务器端程序使用。

另外live555,依赖于openssl库,因此,需要将openssl包含在项目中,包含在我项目文件的thrid的openssl目录中。,项目目录如下
在这里插入图片描述
关于如何安装openssl,请自行参考其他文章,安装的openssl应该具有以下目录
在这里插入图片描述
其中include是openssl的头文件,win32和win64是32位和64位对应的lib和dll文件,由于我项目编译的时候选择的是Debug的64位,因此使用的openssl库是win64目录下的dll和lib文件。

将live555的文件依次拷贝到项目目录下, 比如BasicUsageEnvironment拷贝后的文件如下,其他项目类似,保持和live555项目的路径一致即可。
在这里插入图片描述

项目配置

UsageEnvironment

修改配置类型和输出目录
在这里插入图片描述
其中输出目录为lib的输出地方,可以根据自己的情况选择,但是mediaServer,testProgs等exe文件需要找到这个lib的位置
包含头文件
在这里插入图片描述

..\BasicUsageEnvironment\include;
..\groupsock\include;
..\liveMedia\include;
..\UsageEnvironment\include;

BasicUsageEnvironment

跟UsageEnvironment一样

groupsock

跟前面一样,另需要添加预处理定义
在这里插入图片描述

_CRT_SECURE_NO_WARNINGS
_WINSOCK_DEPRECATED_NO_WARNINGS

同时修改少量代码
打开GroupsockHelper.cpp,如果不修改,直接编译会报错,就知道哪里出了问题
在这里插入图片描述
window下,没有这2个头文件,这2个头文件是linux下,用于获取ip地址,不需要。
同时修改或者注释这段代码(不影响)
在这里插入图片描述

liveMedia

预处理定义添加

_CRT_NONSTDC_NO_DEPRECATE
_CRT_SECURE_NO_WARNINGS
_WINSOCK_DEPRECATED_NO_WARNINGS

头文件添加

..\BasicUsageEnvironment\include;
..\groupsock\include;
..\liveMedia\include;
..\thrid\openssl\include;
..\UsageEnvironment\include;

其他和前面一样

mediaServer

配置属性
在这里插入图片描述
这里配置类型不需要修改,为exe程序

头文件添加

..\BasicUsageEnvironment\include;
..\groupsock\include;
..\liveMedia\include;
..\thrid\openssl\include;
..\UsageEnvironment\include;

预处理定义添加

_CRT_NONSTDC_NO_DEPRECATE
_CRT_SECURE_NO_WARNINGS
_WINSOCK_DEPRECATED_NO_WARNINGS

链接属性

附加库目录

../thrid/openssl/win64;../Debug/

在这里插入图片描述
输入

libcrypto.lib
libssl.lib
ws2_32.lib
BasicUsageEnvironment.lib
groupsock.lib
liveMedia.lib
UsageEnvironment.lib

在这里插入图片描述

testProg等

同 mediaServer 配置一样

添加openssl动态库

将openssl目录下的动态库拷贝到Debug目录下,如下所示
在这里插入图片描述

错误情况

注意解决方案根据自己的情况选择,我这里编译的Debug X64,因此选择了openssl win64的库,如果想编译为x86,选择openssl 32位即可,同时要注意路径配置是否正确,我这里是选择的相对路径,相对路径一定要保证你的项目目录和我的一样,否则会出现找不到文件的情况。

百度网盘

链接:live555_2022.4.26
提取码:svss

在我这篇博客有2019.8.28日的live555的注释代码(不过注释的不正确,参考我百度网盘的说明):live555 RTSP服务器与客户端通信源码分析

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值