编译 librtmp (Windows VS2017)
2020-05-18 本文已影响0人
z_abandon
-
下载 librtmp rtmpdump-2.3-windows.zip
-
下载 librtmp 的依赖 zlib zlib-1.2.11.tar.gz
-
新建 VS2017 空项目,将解压后得到的 librtmp 头文件和源文件导入项目
-
修改 VS2017 项目属性的配置类型为静态库
-
在 VS2017 项目属性之中添加预处理宏
_CRT_SECURE_NO_WARNINGS
_WINSOCK_DEPRECATED_NO_WARNINGS
- 去除 rtmp.h 头文件之中的加密设置(不使用 openssl)
//#if !defined(NO_CRYPTO) && !defined(CRYPTO)
//#define CRYPTO
//#endif
- 在 rtmp_sys.h 文件中增加常用函数定义
#ifdef _MSC_VER /* MSVC */
#include <sys/types.h> // off_t
#define strdup _strdup
#define strcasecmp _stricmp
#define strncasecmp _strnicmp
#endif
-
去除 netstackdump 和 netstackdump_read 字段相关代码,这些字段主要用于debug下的输出;要编译debug版本需要注释这些,否则报错
-
在 rtmp_sys.h 文件中删除如下行
//#define EWOULDBLOCK WSAETIMEDOUT
-
解压 zlib,使用 CMake 生成 zlib VS2017 项目,并编译静态库(debug版本和release版本分别编译)
-
在 librtmp 项目之中引入 zlib
-
编译 librtmp
参考:
link1