【Live555】Live555 Windows下使用VS2017編譯教程

更多文章請關注嵌入式機器人公衆號
在這裏插入圖片描述
附上VS2019編譯成功的最新資源包!https://download.csdn.net/download/qq_38131812/11139180

1 在http://www.live555.com/liveMedia/public/下載最新的代碼

2 解壓 隨便放個地方

3 打開vs2017 專業版,文件-新建-項目

其他項目類型-visual studio 解決方案-空白解決方案

名稱,位置隨便,自己記得就行

4 在解決方案上右鍵 添加 新建項目

5 看一下剛纔下載並解壓的live555,裏面有五個文件夾是需要的

6 所以,新建項目的名稱爲BasicUsageEnvironment,注意選從是c++,空項目。

7 右鍵BasicUsageEnvironment,選擇在文件資源管理器中打開文件夾,然後把剛纔下載下來的文件夾BasicUsageEnvironment中的include文件夾以及後綴爲.c,.cpp,.h,.hh的文件全部複製過來,下圖中劃線的全部都要複製

8 添加頭文件,在頭文件上右擊,添加,現有項,然後選擇include文件夾中的全部文件。

9 添加源文件,在源文件上右擊,添加 現有項,然後選擇剛纔複製過去的除了include文件夾中的其他文件(包括.c,.cpp,.h,.hh四種文件),添加完之後如圖:

注意:include中的文件全部添加到頭文件中,include外的.c,.cpp,.h,.hh四種文件全部添加到源文件中。

10 在BasicUsageEnvironment項目上右擊 屬性,常規 配置類型,選擇靜態庫(最終生成的是.lib)

預編譯頭 不使用預編譯頭。

11 到此,BasicUsageEnvironment全部完成

12 同理完成groupsock,liveMedia,UsageEnvironment。完成之後如下圖:

13 右鍵解決方案,添加 新建項目 mediaServer,此處依然選擇c++的空項目,但這個項目的屬性 常規 配置類型 選擇應用程序(默認就是應用程序 不用改)

14 然後將對應的.cpp,.hh四種文件複製過來,這個項目我下載下來的源文件夾中沒有include文件夾。按上面一樣在源文件上右擊,添加 現有項

15在BasicUsageEnvironment項目上右鍵 屬性 常規 附加包含目錄,輸入:..\BasicUsageEnvironment\include;..\groupsock\include;..\liveMedia\include;..\UsageEnvironment\include

16 其他四個項目同理

15開始編譯

16 mediaServer這個項目最後編譯,先編譯其他四個

在BasicUsageEnvironment項目上右鍵 生成,如果不報錯最好,我這裏報錯誤

C4996 '_snprintf': This function or variable may be unsafe. Consider using _snprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. BasicUsageEnvironment e:\live555\live555\basicusageenvironment\basicusageenvironment0.cpp 79

解決方法:屬性 預處理器 添加_CRT_SECURE_NO_WARNINGS; 它報什麼錯就加什麼

17 除了mediaServer以外的其他三個項目都這樣編譯,編譯成功後,在live555的文件夾下會生成四個對應的lib文件,此時在mediaServer下新建lib文件夾,將四個lib文件放進去

18 右擊mediaServer項目 屬性 連接器 常規 附加庫目錄 輸入lib

19 連接器 輸入 附加依賴項 點編輯 輸入BasicUsageEnvironment.lib;groupsock.lib;liveMedia.lib;UsageEnvironment.lib;Ws2_32.lib

20 編譯mediaServer,右鍵該項目 點生成。生成成功之後,在live555的debug目錄下出現mediaServer.exe,這個就是最終的結果,我們需要的東西。

21 附上我生成過程中報的錯及解決方式:

嚴重性 代碼 說明 項目 文件 行 禁止顯示狀態

錯誤 C4996 '_snprintf': This function or variable may be unsafe. Consider using _snprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. BasicUsageEnvironment e:\live555\live555\basicusageenvironment\basicusageenvironment0.cpp 79

解決方式:預處理中添加_CRT_SECURE_NO_WARNINGS;

嚴重性 代碼 說明 項目 文件 行 禁止顯示狀態

錯誤 C4996 'gethostbyname': Use getaddrinfo() or GetAddrInfoW() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings groupsock e:\live555\live555\groupsock\netaddress.cpp 108

解決方式:預處理中添加_WINSOCK_DEPRECATED_NO_WARNINGS;

參考:https://blog.csdn.net/qq_29350001/article/details/77962082

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章