rtmpdump移植到 Windows VS2008 下的移植日志

1. 创建win32控制台应用程序,将librtmp下的文件分成"头文件"和"源文件",分别放置.

2. 将rtmpsrv.c, rtmpsuck.c, rtmpgw.c从项目中移除.
这些功能是暂时不用的。

3. 编译提示: " fatal error C1083: 无法打开包括文件:“stdint.h”: No such file or directory".
解决:
从linux下的系统文件"stdint.h"复制到librtmp文件夹下;
在项目中添加"现有项";
将所有提示的地方改成#include "stdint.h"。

4. 编译提示: " fatal error C1083: 无法打开包括文件:“getopt.h”: No such file or directory ".
解决:
将linux下的文件"getopt.c", "getopt.h"复制到rtmpdump目录下;
将文件添加到现有项目;
将#include<stdin.h>改成#include"stdin.h";

5. 错误提示:
fatal error C1083: 无法打开包括文件:“openssl/ssl.h”: No such file or directory 
解决:
在项目属性页->C/C++->预处理器->预处理器定义中添加"NO_CRYPTO"
这样做就是不用RTMPT, RTMPE等协议。

6. error C2081: “off_t”: 形参表中的名称非法
解决:
将zlib下的文件zlib.h zconf.h复制到rtmpdump目录下;


7. 错误提示:
1>rtmpdump.obj : error LNK2019: 无法解析的外部符号 __imp__WSAStartup@8,该符号在函数 _InitSockets 中被引用
1>rtmpdump.obj : error LNK2019: 无法解析的外部符号 __imp__WSACleanup@0,该符号在函数 _CleanupSockets 中被引用
解决:

在头文件中加入语句#pragma comment( lib, "ws2_32.lib" )   来显式加载。 即:
#include <winsock2.h> 
#pragma comment(lib, "WS2_32")

8. 错误提示:
1>rtmpdump.obj : error LNK2019: 无法解析的外部符号 _fseeko64,该符号在函数 _OpenResumeFile 中被引用
1>rtmpdump.obj : error LNK2019: 无法解析的外部符号 _ftello64,该符号在函数 _OpenResumeFile 中被引用

解决:
将定义改成:
#define fseeko fseek
#define ftello ftell

9. 错误提示:
1>rtmpdump.obj : error LNK2019: 无法解析的外部符号 _snprintf,该符号在函数 _main 中被引用

解决:
将snprintf改成"_snprintf"
strncasecmp改成"strncmp"
strcasecmp改成"strcmp"



11. 将所有的在代码中的变量定义改到函数开始处,或是本层{}的开始处,
这是因为VC默认是不支持变量定义随处定义的。

12. 错误提示:
warning C4996: 'setmode': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _setmode. See online help for details.
解决:
将"setmode"改成"_setmode"
将"fileno"改成"_fileno"

编译通过,测试通过
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值