ARM可以算是编译陷阱之王,最常见的地狱之门,SRS目前遇到的编译问题大部分都是ARM问题。
ARM主要有armv7和aarch64(armv8),SRS支持aarch64编译和docker镜像,支持ARM交叉编译,支持80%左右的ARM场景,天路再宽一条,愿大家生活更轻松。
为什么
为什么要支持 ARM?因为现在 80% 的编译问题都是由人们摆弄 ARM 引起的。常见误解:
•在ARM服务器(RaspberryPi、鲲鹏等)上运行SRS,使用交叉编译,失败。正确做法:直接在ARM服务器上编译,不要交叉编译,参考v4_CN_SrsLinuxArm[1]。 •在自己的Ubuntu虚拟机上交叉编译,失败。正确做法:使用SRS提供的Ubuntu镜像交叉编译,参考#1547[2] •其他ARM版本,或者其他芯片,失败。目前没什么好办法,ARM地狱之门无处不在,只能祈祷好运。
注:MIPS好像是支持的,我朋友试了一下龙芯,好像没问题。
重要的事情强调十遍:
1.一般不需要交叉编译,直接在ARM服务器或者Docker上编译即可。 2.一般不需要交叉编译,直接在ARM服务器或者Docker上编译即可。 3.一般不需要交叉编译,直接在ARM服务器或者Docker上编译即可。 4.一般不需要交叉编译,直接在ARM服务器或者Docker上编译即可。 5.一般不需要交叉编译,直接在ARM服务器或者Docker上编译即可。 6.一般不需要交叉编译,直接在ARM服务器或者Docker上编译即可。 7.一般不需要交叉编译,直接在ARM服务器或者Docker上编译即可。 8.一般不需要交叉编译,直接在ARM服务器或者Docker上编译即可。 9. 一般情况下不需要交叉编译,直接在 ARM 服务器或者 Docker 上编译即可。 10. 一般情况下不需要交叉编译,直接在 ARM 服务器或者 Docker 上编译即可。
这是逃离ARM编译地狱的阿弥陀佛指令,SRS一直在铺就各种通往天堂的道路,尽力掩盖通往地狱的大门,然而还是有很多朋友用尽智慧,还是没有找到通往地狱的大门。
路线图
目前SRS对ARM的支持非常完善,下面按照常用顺序列出:
1. 直接在 ARM Server 上编译,和 CentOS7 一样,不需要交叉编译,参考 ARM Server[3],比如 RaspberryPi 或者 Kunpeng 服务器。如果编译时无法识别 CPU,可以参考文档指定参数。 2. 如果要在本地机器编译 ARM 安装包,不需要交叉编译,可以使用 Docker 的 ARM 镜像 ossrs/srs:aarch64[4],比如在 Mac 上编译好 SRS,然后扔到 Kunpeng 服务器运行。 3. 有些 ARM 板子没有 GCC 等编译器,只有运行能力没有编译环境,可以使用交叉编译,参考 CrossBuild: ARMv8[5] 或 CrossBuild: ARMv7[6]。
SRS[7]的开发镜像也支持aarch64,目前已经上传到官方Docker[8]和阿里云[9]。利用该开发镜像,你可以在任意装有Docker的机器上开发、调试和验证ARM版SRS:
•ossrs/srs:aarch64•/ossrs/srs:aarch64
未来的计划:
• 后续支持ARM芯片,比如armv9,ST需要适配各个版本的芯片。 • 好像支持MIPS,但是可以更好,比如MIPS的Docker镜像。 • 支持更多芯片,有需求可以在论坛留言[10]。
参考
[1]v4_CN_SrsLinuxArm:
[2]#1547:#问题-543780097
[3]ARM服务器:#arm-server-armv7-armv8aarch64
[4]ossrs/srs:aarch64:#使用情况
[5]交叉构建:ARMv8:#ubuntu-cross-build-srs-armv8aarch64
[6]交叉构建:ARMv7:#ubuntu-cross-build-srs-armv7
[7] 开发映像:#usage
[8]Docker官方:
[9] 阿里云:
[10] 论坛:
关于SRS:
SRS是全球排名第一的开源媒体服务器,简洁高效,支持RTMP、WebRTC、HLS、HTTP-FLV、SRT、GB28181等协议,目标是提升。。开发者的创造力,愿景是让新手也能跨过。。门槛,让开发者爱上摆弄音。。。将于2021年6月9日在木兰开源社区正式孵化。
“木兰开源社区”成立于2019年8月,是国家重点研发计划重点项目“云计算与大数据开源社区生态”的核心成果,旨在促进开源领域产学研用交流,推动国家科技创新成果开源,加强企业、科研机构和行业用户的沟通,促进开源成果的转化和落地,为各类开源项目提供中立托管,确保开源项目可持续发展不受第三方影响,以更加开放的方式打造和完善开源社区生态。
标题:开源流媒体服务器SRS全面支持ARM平台流媒体服务器是干嘛的
链接:https://www.ltthb.com/news/xydt/121584.html
版权:文章转载自网络,如有侵权,请联系删除!