SONIC 编译指南

sonic编译过程 文章目录1.虚拟机选择 1.虚拟机选择 原则上所有的系统都可以编译sonic,此处我们选择centos 7.7,虚拟机的内存空间建议给8G,建议根目录空间有200G(因为在编译的时候) ... 阅读详情

最好有可以翻墙的XXX,可以访问国外很多网站

1.1准备工作

1.1.1安装Docker CE

在一台Linux系统的主机或服务器上安装最新版本的 docker CE

如果你之前安装过 Docker(被称为 Docker 或者 Docker-engine)的话,你首先需要卸载它们。

sudo apt-get remove docker docker-engine docker.io

如果你的 Ubuntu 版本是 Trusty 14.04 的话,请首先安装 linux-image-extra-*,这允许 Docker 使用 aufs 存储驱动:

$ sudo apt-get update

$ sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual

如果你的系统是 Ubuntu 16.04 或者更高的版本,则无需安装以上软件包。

  • 更新软件源
sudo apt-get update
  • 安装软件包

sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

  • 添加 Docker 的官方 GPG key:

curl –fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -

  • 验证 key fingerprint 和以下内容符合:

9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88.

  • 使用以下指令验证:

sudo apt-key fingerprint 0EBFCD88

pub   4096R/0EBFCD88 2017-02-22

      Key fingerprint = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88

uid                  Docker Release (CE deb) <docker@docker.com>

sub   4096R/F273FCD8 2017-02-22

使用以下指令设置为稳定版(stable)。一般情况下,稳定版总是最好的。如果你需要 test 或者 edge 版本,请在下面的指令里的“stable”后面直接添加“test”或者“edge”。

注意:下面指令中的“lsb_release -cs”需要替换为你目前使用的 Ubuntu 发行版的名字,比如 xenial。

amd64:

sudo add-apt-repository \

   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \

   $(lsb_release -cs) \

   stable"

armhf:

sudo add-apt-repository \

   "deb [arch=armhf] https://download.docker.com/linux/ubuntu \

   $(lsb_release -cs) \

   stable"

  • 安装

sudo apt-get update

sudo apt-get install docker-ce

  • 检验安装是否成功
查看docker服务是否启动:

$ systemctl status docker
sudo docker run hello-world

这条指令会下载一个测试镜像并在容器中运行这个镜像,打印一些消息然后直接退出。

1.1.2添加用户

创建Linux操作系统用户admin,且该用户要加入docker 用户组中:

adduser admin

 

usermod -aG docker admin

 

编辑 /etc/sudoers ,在最后一行添加:

admin ALL=(ALL:ALL) NOPASSWD:ALL

 

切换到刚才创建的admin用户:

su admin

 

sudo modprobe overlay

 

sudo apt-get install dos2unix

 

sudo apt-get install qemu-kvm libvirt-bin

 

1.1.3虚拟化设置

  查看虚拟机cpu是否支持虚拟化, cat /proc/cpuinfo | grep flags

https://blog.youkuaiyun.com/u012124304/article/details/80955753

 

对于物理机:

      a, 设置nested, 重启物理机

      b, lsmod | grep kvm  , lsmod | grep kvm-intel

        没有就按照modprobe kvm  modprobe kvm-intel

      C, virsh edit 编辑虚拟机对应文件,在cpu特性新增<feature policy='require' name='vmx'/>

  

重启服务器后,查看meminfo内存,配置/proc/sys/vm/nr_hugepages 为10

Virsh start 虚拟机,查看lscpu

 

比如:

virsh edit vmXXX

 

  </features>

  <cpu mode='custom' match='exact' check='partial'>

    <model fallback='allow'>Skylake-Server-IBRS</model>

    <feature policy='require' name='vmx'/>

  </cpu>

 

virsh destroy vmXXX

virsh start vmXXX

SONiC (7) - SONiC 编译分析 摘要:SONiC构建框架采用GNU Make实现自动化构建,分为后端(Makefile等)和前端(recipe规则)。后端定义通用目标组,前端通过recipe为每个目标定义元数据。构建输出存放在target目录,支持多种目标类型(deb包、Docker镜像等)。调试功能可通过INSTALL_DEBUG_TOOLS=y启用,生成带调试工具的镜像,支持gdb等调试操作。框架提供灵活的目标组管理,支持本地构建、在线获取等多种构建方式,并通过docker-slave环境实现隔离构建和调试。 阅读详情

相关推荐

部署Sonic编译服务器

编译Sonic环境部署编译Sonic环境编译准备开机自动挂载硬盘创建用户安装 Docker克隆仓库代码 部署编译Sonic环境 先给服务器安装 Ubuntu20.04.02 系统,Sonic编译 Github 链接 sonic-buildimage,接下来按需求操作: 编译准备 开机自动挂载硬盘 查看硬盘UUID和Type sudo blkid 打开配置文件,间隔用TAB键隔开,否则进不了桌面 sudo gedit /etc/fstab sudo vim /etc/fstab UUID=0F8105

老权仔的博客 1678

SONiC镜像编译指南

1.准备工作 在一台Linux系统的主机或服务器上安装最新版本的 docker CE,然后再进行接下来的操作。 创建Linux操作系统用户nocsys,且该用户要加入docker 用户组中: sudo useradd -d /home/nocsys -m -g docker nocsys 设定nocsys用户的密码: sudo passwd nocsys 编辑 /etc/sudoers...

筋斗云计算 9031

Sonic Scenarist v4.1实操指南:从素材准备到DVD编译输出

在专业影音光盘制作领域,DVD创作工具的选择直接影响母版质量与量产兼容性。Sonic Scenarist v4.1作为工业级标准软件,通过Track、PGC与Command的严谨架构,将编码后的音视频素材编排为符合DVD规范的VIDEO_TS结构,并在编译阶段逐条校验命令与跳转逻辑,从而保障批量复制的稳定性和播放器兼容性。无论是多音轨切换、动态菜单还是强制字幕,它都能提供精确控制。然而,网络上常将它与施耐德电气的SoMachine v4.1软件下载混淆——后者属于工业自动化PLC编程环境,两者毫无关联。本文

weixin_28630185的博客 331

探索开源网络的未来:SONiC编译指南

探索开源网络的未来:SONiC编译指南 【下载地址】开源网络操作系统SONiC编译指南分享 本仓库提供了一份详细的“开源网络操作系统SONiC编译指南”资源文件,旨在帮助开发者顺利完成SONiC操作系统的编译工作。SONiC(Software for Open Networking in the Cloud)是一个开源的...

gitblog_06643的博客 497

开源网络操作系统sonic编译指南

开源网络操作系统sonic编译指南

sonic-buildimage:为SONiC执行可安装的二进制映像构建的脚本

主人:创新: 赤脚: Broadcom: Mellanox: Nephos: P4: VS: 201911 :Broadcom: Mellanox: VS: 201811年:创新: Broadcom: Mellanox: VS: 201807年:Broadcom: 赤脚: Mellanox: 201803 :博通: Nephos: Marvell: Mellanox: 声音构建图像 构建SONiC交换机映像 描述 以下是有关如何为网络交换机构建兼容的网络操作系统(NOS)安装程序映像以及如何构建在NOS内部运行的docker映像的说明。 请注意,SONiC映像是按ASIC平台构

【亲测免费】 开源网络操作系统SONiC编译指南

开源网络操作系统SONiC编译指南 【下载地址】开源网络操作系统SONiC编译指南分享 本仓库提供了一份详细的“开源网络操作系统SONiC编译指南”资源文件,旨在帮助开发者顺利完成SONiC操作系统的编译工作。SONiC(Software for Open Networking in the Cloud)是一个开源的网络...

gitblog_06619的博客 779

软件工程案例教程·韩万江【课后习题】

!!!!

weixin_57858263的博客 6416

SONiC镜像编译指南(转,参考1)

1.准备工作 在一台Linux系统的主机或服务器上安装最新版本的 docker CE,然后再进行接下来的操作。 创建Linux操作系统用户nocsys,且该用户要加入docker 用户组中: sudo useradd -d /home/nocsys -m -g docker nocsys 设定nocsys用户的密码: sudo passwd nocsys 编辑 /etc/sudoers...

~~ LINUX ~~ 1634

1. 基于STM32的1.28寸圆形IPS屏(GC9A01)驱动移植实战:软件SPI与硬件SPI双方案详解

本文详细介绍了如何在STM32平台上为1.28寸圆形IPS屏(GC9A01驱动芯片)移植驱动程序,涵盖软件SPI与硬件SPI两种实现方案。内容从引脚定义、工程搭建、GPIO配置到SPI外设初始化逐步详解,并提供了完整的测试代码,帮助开发者根据项目需求(灵活性或性能)选择合适的通信方式,快速点亮屏幕并集成到智能手表等嵌入式项目中。

weixin_42300144的博客 203

zabbix添加IBM服务器SNMPV3监控

本地采用欧冠的是zabbix5.0,服务器型号是SR860,使用snmpv3因为只支持这个,醉了。说明:本地采用欧冠的是zabbix5.0,服务器型号是SR860。

萌新包大人的博客 1984

编译SONiC交换机镜像

sonic-buildimage 编译SONiC交换机镜像 描述 以下是关于如何为网络交换机构建(ONIE)兼容网络操作系统(NOS)安装程序镜像的说明,以及如何构建在NOS内运行的Docker镜像。请注意,SONiC镜像是根据每个ASIC平台来构建的。使用相同ASIC平台的交换机共享一个通用镜像。有关支持的交换机和ASIC的列表,请参阅此列表。 硬件 任何服务器都可作为构建映像的服务器。我们使用...

redwingz的博客 6623

ANSYS Maxwell:创建即用型 3D 轴向磁通电机模型

Magnet Length” 是磁体的径向长度。“Magnet Thickness” 是磁体的轴向长度。为了对 AFM 进行更详细的分析,用户需要在 ANSYS Maxwell 中运行 3D FEA 分析。对于 2D 模型,它们类似于 MotorCAD 中的模型,后者对等效的直线电机进行建模。单击“确定”后,将创建一个 3D Maxwell 模型。“长度”是转子铁的轴向长度。然后需要定义定子的“磁芯”尺寸和材料。“长度”是定子铁芯的轴向长度。“转子”# 的极数必须与“定子”中定义的磁极相同。

jkh920184196的博客 1152

10倍性能提升:Sonic跨平台预编译指令实战指南

你还在为JSON解析性能瓶颈烦恼吗?当服务每秒处理数万请求时,传统JSON库的CPU占用可能高达40%。本文将揭示Sonic如何通过amd64与arm64平台的条件编译技术,实现10倍性能提升的底层奥秘。读完你将掌握: - 跨平台编译的3种核心实现方式 - AMD64架构SIMD指令优化技巧 - ARM64平台NEON指令适配方案 - 预编译指令调试与性能验证方法 ## 为什么条件编译是高性能...

gitblog_00233的博客 433

tkinter使用label视频播放

tkinter是python的界面开发包 使用tkinter显示视频流的一个办法是使用label来逐帧显示图片。 from Tkinter import * from PIL import ImageTk, Image import cv2 root = Tk() # Create a frame app = Frame(root, bg="white") app.grid() # Create a label in the frame lmian = Label(app) lmain.grid(

六十英里的专栏 5526

PostgreSQL和PostGIS安装、导入shp或gdb格式数据至数据库、使用QGIS测试上传PstGIS数据库操作和代码

本文详细介绍了postgresql和postgis安装步骤,并且使用postgis测试上传shp和gdb格式的矢量数据至数据库,包括步骤和代码,并使用qgis连接postgis数据查看数据库里的数据,数据依旧和本地数据一样可查看可编辑,方便后续数据底座开发和服务。

weixin_46456488的博客 1243

VasSonic iOS 终端接入指南:从 Sonic.framework 编译到 Session 全流程集成

本文基于 VasSonic 仓库中的 [终端接入指引-iOS版本](https://link.gitcode.com/i/6a9e45d6a5af065d5fd498751f38a52b),完整讲解在 iOS 原生工程中接入 VasSonic 的五个核心步骤:编译并引入 Sonic.framework、注册 `SonicURLProtocol` 拦截网络请求、实现 `SonicSessionDel

gitblog_00775的博客 604

YOLOv11涨点改进 | 全网独家首发、特征融合创新篇 | ACM 2025顶会 | 引入DAAttn差异感知注意力融合模块,通过动态调整注意力,使模型更准确地识别关键内容,提高精度、并减少冗余计算

本文提出了一种基于DAAttn(差异感知注意力融合)模块改进的YOLOv11模型,用于提升变化检测任务的性能。DAAttn模块通过动态加权特征差异,有效区分有意义变化与噪声(如光照、天气变化),显著提高了模型在复杂场景下的检测精度。该模块采用反转注意力机制,重点关注显著差异区域,同时减少计算冗余。实验表明,改进后的模型在保持计算效率的同时,能够更准确地识别小目标和细节变化。文章详细介绍了DAAttn的原理、优势、实现代码及其在YOLOv11中的集成方法,并提供了两种改进配置方案。

Ai缝合怪、助力小伙伴高效发论文 299

Sonic预编译指令:amd64与arm64平台的条件编译实践指南

你是否曾在开发高性能JSON处理库时遇到这些痛点:同一套代码在x86服务器上性能卓越,却在ARM嵌入式设备上频繁崩溃?或者精心优化的SIMD指令集在不同架构下无法兼容?Sonic作为"blazingly fast"的JSON序列化/反序列化库,通过精妙的条件编译系统完美解决了这些问题。本文将深入剖析Sonic如何利用Go语言的`//go:build`指令和C语言的`#ifdef`宏,在amd64与...

gitblog_00484的博客 533

【R语言】基于Biomod2集成平台探究物种分布区的构建流程(SDMs)

我为什么想要写这个内容呢?其实我已经想了很久了,但是一直没有把所有的代码给理清楚,此外这将是我之后研究的主要方向。本博客讲述了如何基于Biomod2集成平台构建物种分布模型的全流程,以及我在使用该模型时的一些心得,同时还有我提供的一些小福利(一键处理代码),可以十分快捷的帮助你完成SDMs的构建,写出你的中英文论文。

amyniez的博客,欢迎交流讨论 3889

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

sonic云真机分布式部署-ios真机接入

一、现状 目前ios真机官方进度反馈,仍是远程操作比较卡顿,待后期继续优化解决; 部署到个人mac节点上,可以发现,还是比较难满足日常使用的(主要是太卡了),待持续优化中。 二、接入环境 mac机器部署ios的agent接入 ===================== 配置环境检查结果 ===================== JAVA_HOME(系统PATH环境变量): /Library/Java/JavaVirtualMachines/jdk-18.jdk/Contents/Home java ver

LiXueFu727224204的博客 5180

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

突破JSON解析瓶颈:Sonic递归类型处理与Pretouch编译策略全解析

你是否在生产环境中遇到过这样的困境:服务启动后首次处理复杂JSON数据时出现500ms以上的延迟峰值?当系统面对深度嵌套的JSON结构(如多层级API响应、复杂配置文件或大数据集),传统JSON库往往因即时编译(JIT)机制导致首屏加载缓慢。作为字节跳动开源的高性能JSON库,Sonic(GitHub_Trending/sonic2/sonic)通过创新的Pretouch预编译策略,将递归类型处理...

gitblog_00499的博客 398

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Creality_Sonic_Pad:一款强大的3D打印机固件助手

Creality_Sonic_Pad:一款强大的3D打印机固件助手 项目介绍 Creality_Sonic_Pad 是一款专为3D打印机设计的固件助手,旨在帮助用户更轻松、高效地管理和更新3D打印机的固件。该助手由Creality官方开发,提供了一套完整的固件编译和升级指南,确保用户在固件更新过程中能够获得最佳体验。 项目技术分析 Creality_Sonic_Pad 基于Linux子系统,在Wi...

gitblog_00278的博客 590

Sonic Visualiser 完整入门指南:5 步把声音变成看得见、可测量的可视化

把一个录音导入 Sonic Visualiser,波形、频谱图、音高曲线会逐层叠在一起,你听到的声音从此可以被查看、框选、测量并导出成文件。本文带你从源码构建一直走到第一次分析,全程照着做即可直接上手。 ## 🧭 项目速览 Sonic Visualiser 是一款免费、开源、跨平台的音乐音频可视化、标注与分析桌面程序,解决的是"声音只能听、没法看、没法量"的问题。它就像音乐的显微镜:把一段录

gitblog_01159的博客 126

Sonic Unleashed Recompiled 项目使用与配置指南

Sonic Unleashed Recompiled 是一个将Xbox 360版本的Sonic Unleashed游戏通过静态重编译方式移植到PC和Linux平台的开源项目。以下是项目的目录结构及其介绍: ``` UnleashedRecomp/ ├── .github/ # GitHub特定的配置文件和文档 ├── UnleashedRecomp/ # 项目...

gitblog_00047的博客 389
上一篇: 如何超过大多数人
下一篇: docker 常用命令总结
废言Pro
博客等级 码龄16年 1092粉丝 142原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值