当前位置: 首页 > news >正文

webrtc-stream编译报错记录

磁盘空间不足错误

  • 错误信息
677.2 fatal: cannot create directory at 'blink/web_tests/external/wpt': No space left on device
  • 说明:这个错误是由于本地在配置docker资源时所给磁盘空间太小导致,直接根据镜像大小合理分配资源大小即可
    docker资源调整

pushd和popd执行报错

ERROR: failed to solve: process "/bin/sh -c pushd .." did not complete successfully: exit code: 127
  • chatgpt了一下,pushd和popd整体相当于执行cd .. 和 cd -操作,这里可以使用cd操作或者直接使用WORKDIR进行目录定位进行操作

相关依赖不存在报错

  • 官方git给出build如下所示
    在这里插入图片描述
  • 在次步骤中缺少相关依赖,需要执行以下操作
    • 拉取webrtc-stream 后需要拉取相关代码依赖
    git submodule init
    git submodule update 
    
    • fetch webrtc代码之后需要再执行gclient sync进行同步操作

cmake执行报错

  • 缺少相关依赖:这种情况直接根据报错安装缺少相关依赖
  • 相关版本不匹:根据提示安装相匹配版本即可

MAC直接编译报错

  • 编译dockerfile之后生成镜像中不包含lib64目录
qemu-x86_64: Could not open '/lib64': No such file or directory
  • google了一波发现都是让使用软链的方式将lib和lib64进行挂载操作,然后继续执行
qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory
  • 发现并没有什么用,挂载后文件中只包含ld-linux-x86-64.so.1
  • 正确做法是由于MAC架构和ubuntu架构不一致导致,添加平台参数编译即可
docker build --platform linux/x86_64 -t webrtc-stream-test .

make到尾出现的最多的一个问题

  • 报错如下,cmake执行后的输出文件中缺少相关的文件
66.91 [ 99%] Building CXX object CMakeFiles/webrtc-streamer.dir/src/rtspvideocapturer.cpp.o
68.35 make[2]: *** No rule to make target '../webrtc/src/out/Release/obj/rtc_base/librtc_json.a', needed by 'webrtc-streamer'.  Stop.
68.35 make[1]: *** [CMakeFiles/Makefile2:124: CMakeFiles/webrtc-streamer.dir/all] Error 2
68.35 make: *** [Makefile:156: all] Error 2
  • 本着出错即看issue的原则,果然这个问题提问的很多,但是最终都指向了#491
    在这里插入图片描述

  • dockerfile继续编译
    在这里插入图片描述

  • 然后尝试后后并没有解决,继续翻看issue,看到#619make文件不存在,且截止目前该issue仍处于open状态,根据帖子所说直接docker run到已有镜像中,先删除生成文件,然后重新执行编译,惊奇的是结果竟然成功了
    在这里插入图片描述

  • 看到这个结果时我是很😳的,那么肯定不是命令的问题,肯定是脚本存在相关问题,继续检查脚本,最终发现问题出现在目录定位不对,更改成功后可以直接使用

总结

  • dockerfile编译整体还是挺麻烦的,如何后续需要继续二开修噶,推荐直接找台ubuntu系统直接操作即可

相关文章:

webrtc-stream编译报错记录

磁盘空间不足错误 错误信息 677.2 fatal: cannot create directory at blink/web_tests/external/wpt: No space left on device说明:这个错误是由于本地在配置docker资源时所给磁盘空间太小导致,直接根据镜像大小合理分配资源大小即可 pushd和popd执…...

什么是Docker CLI

Docker CLI(命令行界面)是一个工具,允许用户通过命令行或终端与Docker进行交互。Docker是一个开源平台,用于开发、运送和运行应用程序。Docker使用容器化技术来打包应用程序及其依赖项,以确保在不同环境中的一致性和隔…...

Java项目_家庭记账(简易版)

文章目录 简介代码实现 简介 该项目主要用来练习,Java的变量,运算符,分支结构和循环结构的知识点。 程序界面如下: 登记收入 登记支出 收支明细 程序退出 代码实现 package project;import java.util.Scanner;import sta…...

vscode json文件添加注释报错

在vscode中创建json文件,想要注释一波时,发现报了个错:Comments are not permitted in JSON. (521),意思是JSON中不允许注释 以下为解决方法: 在vscode的右下角中找到这个,点击 在出现的弹窗中输入json wit…...

vue3移动端嵌入pdf的两种办法

1.使用embed嵌入 好处&#xff1a;简单&#xff0c;代码量少&#xff0c;功能齐全 缺点&#xff1a;有固定样式&#xff0c;难以修改&#xff0c;不可定制 <embed class"embedPdf" :src"pdfurl" type"application/pdf">2.使用vue-pdf-e…...

中文编程开发语言工具系统化教程初级1上线

中文编程系统化教程初级1 学习编程捷径&#xff1a;&#xff08;不论是正在学习编程的大学生&#xff0c;还是IT人士或者是编程爱好者&#xff0c;在学习编程的过程中用正确的学习方法 可以达到事半功倍的效果。对于初学者&#xff0c;可以通过下面的方法学习编程&#xff0c;…...

零售数据分析模板分享(通用型)

零售数据来源多&#xff0c;数据量大&#xff0c;导致数据的清洗整理工作量大&#xff0c;由于零售的特殊性&#xff0c;其指标计算组合更是多变&#xff0c;进一步导致了零售数据分析工作量激增&#xff0c;往往很难及时分析数据&#xff0c;发现问题。那怎么办&#xff1f;可…...

Spring Cloud之微服务

目录 微服务 微服务架构 微服务架构与单体架构 特点 框架 总结 SpringCloud 常用组件 与SpringBoot关系 版本 微服务 微服务&#xff1a;从字面上理解即&#xff1a;微小的服务&#xff1b; 微小&#xff1a;微服务体积小&#xff0c;复杂度低&#xff0c;一个微服…...

Linux命令(104)之date

linux命令之date 1.date介绍 linux命令date用来设置和显示系统日期和时间 2.date用法 date [参数] date参数 参数说明-s修改并设置时间-d可以显示以前和未来的时间%H小时%M分钟%S秒%X等价于%H %M %S%F显示当前所有时间属性%Y完整年份%m月%d日%A星期的全称 3.实例 3.1.当前…...

微信小程序投票管理系统:打造智能、便捷的投票体验

前言 随着社交网络的兴起和移动互联网的普及&#xff0c;人们对于参与和表达意见的需求越来越强烈。在这个背景下&#xff0c;微信小程序投票管理系统应运而生。它为用户提供了一个智能、便捷的投票平台&#xff0c;使用户可以轻松创建和参与各种类型的投票活动。本文将详细介…...

【算法训练-动态规划 五】【二维DP问题】编辑距离

废话不多说&#xff0c;喊一句号子鼓励自己&#xff1a;程序员永不失业&#xff0c;程序员走向架构&#xff01;本篇Blog的主题是【动态规划】&#xff0c;使用【数组】这个基本的数据结构来实现&#xff0c;这个高频题的站点是&#xff1a;CodeTop&#xff0c;筛选条件为&…...

Windows电脑如何录制电脑桌面?

如果你使用的电脑是Windows系统&#xff0c;那你是不是想知道如何在Windows电脑上录制电脑桌面&#xff1f; 本文以win10为例&#xff0c;好消息是&#xff0c;Windows 10电脑自带录屏工具&#xff0c;你可以直接使用此录屏工具轻松录制视频&#xff0c;而无需下载其他第三方软…...

ubuntu18.04双系统安装(2023最新最详细)以及解决重启后发现进不了Ubuntu问题

目录 一.简介 二.安装教程 1.首先确定了电脑的引导格式是UEFIGPT还是BIOSMBR 2. 使用Windows磁盘管理划分足够的磁盘空间 3. 开始安装 三.重启后发现自动进入WIN10系统了&#xff0c;进不了Ubuntu&#xff1f; 一.简介 Linux是一种自由和开放源代码的操作系统内核&#x…...

Springboot + screw 数据库快速开发文档

1、方式1 引入依赖 <dependency><groupId>cn.smallbun.screw</groupId><artifactId>screw-core</artifactId><version>1.0.5</version></dependency> /*** 文档生成 Springboot2.X screw数据库快速开发文档&#xff08;74&…...

2 第一个Go程序

概述 在上一节的内容中&#xff0c;我们介绍了Go的前世今生&#xff0c;包括&#xff1a;Go的诞生、发展历程、特性和应用领域。从本节开始&#xff0c;我们将正式学习Go语言。Go语言是一种编译型语言&#xff0c;也就是说&#xff0c;Go语言在运行之前需要先进行编译&#xff…...

Leetcode—2678.老人的数目【简单】

2023每日刷题&#xff08;八&#xff09; Leetcode—2678.老人的数目 int countSeniors(char ** details, int detailsSize){ int ans 0; int i; int tens 0; int ones 0; for(i 0; i < detailsSize; i) { tens ((details i) 11) - ‘0’; ones ((details i) 12)…...

解决 /bin/bash^M: bad interpreter: No such file or directory

问题描述 linux 系统中知行*.sh 文件报/bin/bash^M: bad interpreter: No such file or directory 原因&#xff1a; .sh文件是在windows系统编写的&#xff0c;在linux执行就有问题 解决过程 转化下格式执行如下命令 # dos2unix app.sh 结果bash: dos2unix: command not …...

Spring Cloud之服务注册与发现(Eureka)

目录 Eureka 介绍 角色 实现流程 单机构建 注册中心 服务提供者 服务消费者 集群搭建 注册中心 服务提供者 自我保护机制 原理分析 Eureka 介绍 Eureka是spring cloud中的一个负责服务注册与发现的组件&#xff0c;本身是基于REST的服务&#xff0c;同时还提供了…...

Rust-后端服务调试入坑记

这篇文章收录于Rust 实战专栏。这个专栏中的相关代码来自于我开发的笔记系统。它启动于是2023年的9月14日。相关技术栈目前包括&#xff1a;Rust&#xff0c;Javascript。关注我&#xff0c;我会通过这个项目的开发给大家带来相关实战技术的分享。 如果你关注过我的Rust 实战里…...

Flask四种配置方式

Flask是一个轻量级的Python Web框架&#xff0c;被广泛应用于Web开发中。Flask提供了多种配置方式&#xff0c;可以根据不同的需求和场景进行选择。本篇博客将介绍Flask的几种配置方式&#xff0c;并提供相关代码示例。 Flask应用程序的配置对象 在Flask中&#xff0c;应用程序…...

AI驱动开发:在快马平台上让AI模型协作构建你的智能体框架

今天想和大家分享一个最近在InsCode(快马)平台上实践的AI辅助开发项目——构建一个用于代码审查的智能体框架。这个框架特别适合在快马这样的AI开发平台上实现&#xff0c;因为可以直接调用平台内置的多种AI模型来完成智能体之间的协作。 框架设计思路 整个智能体框架由三个核…...

高效Navicat密码找回工具:无需编程的数据库连接密码恢复方案

高效Navicat密码找回工具&#xff1a;无需编程的数据库连接密码恢复方案 【免费下载链接】navicat_password_decrypt 忘记navicat密码时,此工具可以帮您查看密码 项目地址: https://gitcode.com/gh_mirrors/na/navicat_password_decrypt 当数据库连接密码成为工作阻碍&a…...

LAION CLAP音频分类控制台效果展示:交通噪声中精准识别‘救护车鸣笛’真实案例

LAION CLAP音频分类控制台效果展示&#xff1a;交通噪声中精准识别‘救护车鸣笛’真实案例 1. 引言&#xff1a;从嘈杂背景中听清关键声音 想象一下这个场景&#xff1a;你正在一个繁忙的城市路口&#xff0c;周围充斥着汽车引擎声、喇叭声、人声和风声。突然&#xff0c;一阵…...

PowerToys中文汉化版:微软官方增强工具箱的终极本地化体验

PowerToys中文汉化版&#xff1a;微软官方增强工具箱的终极本地化体验 【免费下载链接】PowerToys-CN PowerToys Simplified Chinese Translation 微软增强工具箱 自制汉化 项目地址: https://gitcode.com/gh_mirrors/po/PowerToys-CN PowerToys中文汉化版是微软官方系统…...

别再让LDO过热罢工了!手把手教你用串联电阻给TPS732这类芯片‘减负’

巧用串联电阻为LDO芯片降温的工程实践 最近在调试一块嵌入式板卡时&#xff0c;发现采用SOT-23封装的TPS732频繁触发热保护&#xff0c;导致系统间歇性重启。这种看似简单的电源问题&#xff0c;往往会让工程师在深夜的实验室里抓狂。传统解决方案如增大铺铜面积或更换封装&…...

魔兽争霸III现代兼容性终极指南:用Warcraft Helper重获完美体验

魔兽争霸III现代兼容性终极指南&#xff1a;用Warcraft Helper重获完美体验 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争霸III在现代电…...

Go Context 生命周期与控制流分析

Go Context 生命周期与控制流分析 在Go语言中&#xff0c;Context是控制并发任务生命周期和传递请求范围数据的重要机制。它广泛应用于超时控制、取消信号传递以及跨API边界的数据共享。理解Context的生命周期及其对控制流的影响&#xff0c;对于编写高效、健壮的并发程序至关…...

如何彻底告别网盘下载烦恼:八大主流网盘直链下载助手完全指南

如何彻底告别网盘下载烦恼&#xff1a;八大主流网盘直链下载助手完全指南 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 &#xff0c;支持 百度网盘 / 阿里云盘 / 中国移动云盘…...

C++ STL 容器选型实战:vector/list/map/unordered_map 性能对比与选型指南

一、前言&#xff1a;为什么容器选型是 C 工程的核心&#xff1f;在 C 后端开发、Qt 桌面应用、高性能服务器、嵌入式系统、游戏引擎、实时仿真、数据分析等几乎所有工业级项目中&#xff0c;STL 容器的选型直接决定程序性能、内存占用、可维护性与稳定性。很多开发者习惯随手写…...

视频智能剪辑的革命:FunClip如何用AI重新定义视频编辑边界

视频智能剪辑的革命&#xff1a;FunClip如何用AI重新定义视频编辑边界 【免费下载链接】FunClip Open-source, accurate and easy-to-use video speech recognition & clipping tool, LLM based AI clipping intergrated. 项目地址: https://gitcode.com/GitHub_Trending…...