VS2012 编译Librtmp

经过一天折腾,终于在WIN7 64位环境中编译Librtmp成功!

参考文章:

1.http://www.cnblogs.com/haibindev/archive/2011/12/29/2305712.html

2.http://blog.csdn.net/zqf_office/article/details/10112435

3.http://www.ithao123.cn/content-8350054.html


第一步 Openssl

1.下载Openssl.exe安装后即可使用,网上很多都使用源代码编译,结果折腾半年都不行。最终发现可以直接使用注意选择对应操作系统我选择的是Win64 OpenSSL v1.0.2d Light。

2.安装openssl到C盘下,C:\OpenSSL-Win64。后续使用到的内容为:

头文件目录: C:\OpenSSL-Win64\include 

链接库文件:C:\OpenSSL-Win64\lib\libeay32.lib 和 C:\OpenSSL-Win64\lib\ssleay32.lib

第二步 zlib

1.下载zlib包,并解压。下载地址:http://zlib.net/
2.运行VisualStudio Command Prompt,其实就是VS2012 X64 兼容工具命令提示符,按照网上专家们说的:

切到zlib-2.1.5目录,分别执行以下命令

>cd contrib\masmx86
>bld_ml32.bat

提示XXXml64.exe不是内部命令。恶心惨了。最终解决方式:
将C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\x86_amd64\ml64.exe复制到zlib-1.2.8\contrib\masmx64下面,再按照命令执行即可。
PS:比如我zlib-1.2.8在F盘中,在命令提示符中
a. >F:
b. >F:\DEMO\zlib-1.2.8\contrib\masmx64\
c. >bld_ml64.bat
完成!
3.编译
a.打开F:\DEMO\zlib-1.2.8\contrib\vstudio\vc11\zlibvc.sln
b.按照网上说的,在zlibstat工程属性中,去掉预编译宏 ZLIB_WINAPI
c.只编译,zlibstat项目即可。

头文件目录:F:\DEMO\zlib-1.2.8\下所有.H文件,简单点就是排除文件夹其他文件全部使用。
依赖库文件:F:\DEMO\zlib-1.2.8\contrib\vstudio\vc11\x64\ZlibStatDebug\zlibstat.lib


第三部编译librtmp库

1.下载rtmpdump ,下载地址:http://rtmpdump.mplayerhq.hu/
2.在VS2012中创建C++项目中:
a.WIN32控制台应用程序(命名Librtmp)
b.下一步中选择静态库,取消勾选:预编译头和安全开发生命周期XXOO,完成。
c.在工程文件目录中(PS:在解决方案窗体中,点击项目右键,选择“在资源管理器中打开文件夹”),创建include和lib文件夹。
3.解压下载的文件夹,将rtmpdump-2.3文件夹下的\rtmpdump-2.3\librtmp中的所有文件拷贝到2步骤C的选择的文件夹中。
4.在项目中设置对应的.H文件和C文件,
VS2012 编译Librtmp_第1张图片
选择打开目录中的所有.h文件
VS2012 编译Librtmp_第2张图片
按照对应的方式,在源文件中添加所有的.c文件。
5.添加应用库
a.将第一步中的头文件库以及第二步中的头文件库全部拷贝到include文件夹中
VS2012 编译Librtmp_第3张图片

b.设置项目头文件引用
VS2012 编译Librtmp_第4张图片
C.将第一步和第二步中的.lib文件复制到\Librtmp\Librtmp\lib文件夹中。
VS2012 编译Librtmp_第5张图片
d.设置库引用,

VS2012 编译Librtmp_第6张图片

库名称

VS2012 编译Librtmp_第7张图片

最终项目样子

VS2012 编译Librtmp_第8张图片
编译完成!!

工程压缩包:http://download.csdn.net/detail/pehao/9197621

你可能感兴趣的:(视频相关)