日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

编译librtmp

發布時間:2023/12/31 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 编译librtmp 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉自https://blog.csdn.net/pehao/article/details/49280857

第一步 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文件,

選擇打開目錄中的所有.h文件

按照對應的方式,在源文件中添加所有的.c文件。

5.添加應用庫

a.將第一步中的頭文件庫以及第二步中的頭文件庫全部拷貝到include文件夾中

?

b.設置項目頭文件引用

C.將第一步和第二步中的.lib文件復制到\Librtmp\Librtmp\lib文件夾中。

d.設置庫引用,

?

?

庫名稱

?

?

最終項目樣子

?

編譯完成!!

?

ex:

1、修改rtmp_sys.h文件注釋掉下面部分

#if 0
#ifdef _MSC_VER?? ?/* MSVC */
#define snprintf _snprintf
#define strcasecmp stricmp
#define strncasecmp strnicmp
#define vsnprintf _vsnprintf
#endif
#endif

2、The POSIX name for this item is deprecated.錯誤

屬性->c/c++->預處理器->預處理器定義 ? 中添加:

? ? _CRT_SECURE_NO_DEPRECATE?

? ? _CRT_NONSTDC_NO_DEPRECATE?

3、所有預處理宏:

_CRT_SECURE_NO_WARNINGS
_WINSOCK_DEPRECATED_NO_WARNINGS
_CRT_NONSTDC_NO_DEPRECATE

總結

以上是生活随笔為你收集整理的编译librtmp的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。