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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

LIVE555再学习 -- DM368/Hi3516A 交叉编译

發(fā)布時(shí)間:2025/3/15 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LIVE555再学习 -- DM368/Hi3516A 交叉编译 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

接著上篇文章來講,參看:LIVE555再學(xué)習(xí) -- Linux 下編譯

下載源碼、文件介紹部分不再介紹。主要看配置編譯部分。

三、配置編譯

DM368 的交叉編譯器為 arm-none-linux-gnueabi-gcc?

如果您的目標(biāo)平臺沒有“config.<os-platform>”文件,請嘗試使用其中一個(gè)現(xiàn)有文件作為模板

因此我們創(chuàng)建一個(gè)config.dm368,內(nèi)容可以參考config.armlinux

# cat config.dm368 CROSS_COMPILE?= arm-none-linux-gnueabi- COMPILE_OPTS = $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 C = c C_COMPILER = $(CROSS_COMPILE)gcc C_FLAGS = $(COMPILE_OPTS) CPP = cpp CPLUSPLUS_COMPILER = $(CROSS_COMPILE)g++ CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -DBSD=1 OBJ = o LINK = $(CROSS_COMPILE)g++ -o LINK_OPTS = CONSOLE_LINK_OPTS = $(LINK_OPTS) LIBRARY_LINK = $(CROSS_COMPILE)ar cr LIBRARY_LINK_OPTS = $(LINK_OPTS) LIB_SUFFIX = a LIBS_FOR_CONSOLE_APPLICATION = LIBS_FOR_GUI_APPLICATION = EXE =

==============================================================================

修改說明:

參看:hi3507/hi3515交叉編譯live555

第一個(gè)?CROSS_COMPILE?好理解更改為交叉編譯器

第二個(gè)?CPLUSPLUS_FLAGS?

在 dm368 上操作不做改變是沒有問題的

但是在 Hi3516A 上就不是這樣了,會出現(xiàn)錯(cuò)誤:

In file included from MPEG4GenericRTPSink.cpp:22:0: include/Locale.hh:47:123: fatal error: xlocale.h:沒有那個(gè)文件或目錄#include <xlocale.h> // because, on some systems, <locale.h> doesn't include <xlocale.h>; this makes sure that we get both 這個(gè)是由于海思使用的是 uClinux,并沒有 xlocale.h 這個(gè)頭文件。
而 live555 內(nèi)部的一個(gè) locale 模塊調(diào)用了(見liveMeida/locale.hh),因此通過編譯選項(xiàng)把他去掉。

在編譯選項(xiàng)上加入 -DLOCALE_NOT_USED 把此模塊去掉。

# cat config.hi3516a CROSS_COMPILE?= arm-hisiv300-linux- COMPILE_OPTS = $(INCLUDES) -I. -O2 -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 C = c C_COMPILER = $(CROSS_COMPILE)gcc C_FLAGS = $(COMPILE_OPTS) CPP = cpp CPLUSPLUS_COMPILER = $(CROSS_COMPILE)g++ CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -DBSD=1 -DLOCALE_NOT_USED OBJ = o LINK = $(CROSS_COMPILE)g++ -o LINK_OPTS = CONSOLE_LINK_OPTS = $(LINK_OPTS) LIBRARY_LINK = $(CROSS_COMPILE)ar cr LIBRARY_LINK_OPTS = $(LINK_OPTS) LIB_SUFFIX = a LIBS_FOR_CONSOLE_APPLICATION = LIBS_FOR_GUI_APPLICATION = EXE =

==============================================================================

執(zhí)行: ?./genMakefiles dm368

運(yùn)行: ?make clean && make

然后可以看到 mediaServer 目錄下生成文件 live555MediaServer

四、測試

將?live555MediaServer 拷貝到開發(fā)板上:

tftp -g -r live555MediaServer 192.168.x.xx

更改權(quán)限:

chmod 777?live555MediaServer?

執(zhí)行?live555MediaServer?

./live555MediaServer?


然后找一個(gè)視頻文件,放在和?live555MediaServer同一目錄。注意視頻格式,要是上面所支持的。 然后打開 VLC,媒體->打開網(wǎng)絡(luò)串流,輸入網(wǎng)絡(luò)URL。?rtsp://電腦IP地址/<filename>




總結(jié)

以上是生活随笔為你收集整理的LIVE555再学习 -- DM368/Hi3516A 交叉编译的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。