【OpenBMC 系列】1.OpenBMC 开发环境搭建

【OpenBMC 系列】2.OpenBMC镜像编译流程以及如何加速编译 1.依赖安装 Yocto Build Host Packages You must install essential host packages on your build host. The following command installs the host packages based on an Ubuntu distribution: sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential chrpat 阅读详情

目标:

安装Linux 系统,推荐使用Ubuntu18+,作为开发环境。

安装Qemu 作为bmc运行的虚拟机。

受众:熟悉 Linux 和 BMC 的程序员

先决条件:当前的 Linux、Mac 或 Windows 系统

概述

OpenBMC 使用Yocto项目作为其底层构建和分发生成框架。主要的 OpenBMC README 提供了有关使用 Yocto 和 OpenBMC 的信息。有一些机制可以使用此过程来构建您的更改,但对于您的软件的初始调试和验证来说,它可能既缓慢又麻烦。本指南重点介绍如何使用 OpenBMC 软件开发工具包 (SDK) 和QEMU快速测试新更改。

SDK 是在 BitBake 操作期间构建的一组包。BitBake 是用于构建基于 Yocto 的发行版的工具。SDK 提供了构建 OpenBMC 应用程序所需的所有库和交叉编译器。SDK 不用于构建整个 OpenBMC 闪存映像,它提供了一种机制来编译 OpenBMC 应用程序和库,然后您可以将这些应用程序和库复制到正在运行的系统上进行测试。

QEMU 是一个软件模拟器,可用于运行 OpenBMC 映像。

本文档介绍了设置 OpenBMC 开发环境和安装所需 SDK 的推荐步骤。

出于测试目的,本指南使用 Romulus 系统作为默认系统,因为这是为每个 CI 作业测试的系统,这意味着它是最稳定的。

安装 Linux 环境

如果您运行的是 Linux,并且可以安装一些额外的软件包,那么您可以跳到第 3 步。

推荐的 OpenBMC 开发环境是最新的 Ubuntu LTS 版本。其他版本的 Linux 可能也可以,但需要您自担风险。如果您有 Windows 或 Mac 操作系统,那么 VirtualBox 是运行开发环境的推荐虚拟化工具。

    1.在您的计算机(Mac、Windows、Linux)上安装VirtualBox或 VMware

两者都有可用于您需要的免费版本。VirtualBox 是大多数核心 OpenBMC 开发所使用的。注意:如果要使用此 VM 对完整的 OpenBMC 映像进行 BitBake,则需要分配尽可能多的资源。理想的最低资源是 8 个线程、16GB 内存、200GB 硬盘。仅用于 SDK 构建和 QEMU 应该可以正常使用 VM 上的正常默认值。

     2.安装最新的 Ubuntu LTS 版本

openbmc dbus架构简析 阅读详情

相关推荐

OpenBMC开发之obmc-ikmv键鼠功能

OpenBMC开发中,KVM虚拟键鼠HID功能是基于USBGadget显示配置的,简单介绍下该处代码实现过程。

柠檬恋上雨 993

OpenBmc开发1:openbmc简介

1、构建虚拟机 2、虚拟机下安装ubuntu 18.04 系统 3、更换ubutun软件源 请参考:ubuntu 更换软件安装源为国内源 4、安装开发中必要的支持软件 OpenBmc要求的是ubutun下需要安装: sudo apt-get install -y git build-essential libsdl1.2-dev texinfo gawk chrpat...

master 5万+

OpenBmc开发2:构建开发环境

编译环境VMware + ubuntu 18.04 编译环境构建:参考OpenBmc开发1:构建开发环境 1、打开一个Ternimal,进入openbmc目录下 2、查看有哪些不同的编译配置 find meta-* -name local.conf.sample 可以看到如下编译配置 3、生成编译配置 插入TEMPLATECONF,上边查询到的配置有很多,但是有一些...

master 2万+

Openbmc系列之自动化测试框架1

Openbmc作为当下BMC固件领域最流行的开源软件,具备从需求计划、开发、调试、测试、版本管理等完整的体系。在测试领域,Openbmc基于python的robotframework框架,实现Openbmc的自动化测试,为高效发布Openbmc版本提供有力支持。本文作为测试系列文档一,介绍Openbmc自动化测试虚拟Openbmc的环境搭建。

qq_20341747的博客 2104

OpenBMC固件开发入门必看:从零搭建开发环境

想入门OpenBMC固件开发?从环境搭建开始,手把手教你配置开发所需工具链与依赖,快速上手openbmc项目构建流程,轻松迈出贡献代码的第一步。

weixin_35636570的博客 758

手把手教你搭建OpenBMC开发环境(新手教程)

详细讲解如何从零开始搭建OpenBMC开发环境,涵盖工具安装、代码获取与编译步骤,帮助开发者快速上手openbmc定制开发,解决常见问题,提升调试效率。

weixin_33814090的博客 1321

openbmc-web1:webui开发基础

webui-vue软件包创建于2020年6月8日,软件包地址:https://github.com/openbmc/webui-vue。webui-vue软件包是基于vue开发的,VUE是一套用于构建用户界面的渐进式JavaScript框架,其开发者是阿里巴巴Weex团队技术顾问的尤雨溪。Vue早期开发的灵感来源AngularJS,但是与AngularJS以及其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用,并且在AngularJS 中存在的许多问题,在 Vue 中已经得到解。

master 9203

OpenBmc开发3:编译镜像

编译环境VMware + ubuntu 18.04 编译环境构建:参考OpenBmc开发2:构建开发环境 1、进入openbmc目录 打开一个Terminal(快捷键Ctrl + Alt + T),cd命令切换到openbmc文件夹下 cd openbmc 2、查看可用编译配置 find meta-* -name local.conf.sample 可以看到如下编译配置 3、生成编译配置 插入TEMPLATECONF,上边查询到的配置有很多,但是有一些需要自己进...

master 2万+

OpenBMC开发笔记系列——(三)OpenBMC系统刷新过程

Uboot刷新OpenBMC

u012937840的博客 3106

openbmc 之 entity-manager 是如何工作的(1)

先来概况一下这个可执行文件的工作内容:它需要在没有设备驱动的情况下扫描所有 i2c 总线下的每一个地址(实际上是指定范围的地址),如果发现地址上存在 FRU ,则解析 FRU 的内容并将其推到 dbus 上。什么是 FRU?说白了,它就是一种电子标签,用以存储部件信息。在物理上,它一般存储在板卡上的特有 EEPROM 里,与 BMC 通过 i2c 的方式取得连接。fru-device 在根本上所做的事,便是通过 i2c 来寻找 FRU ,从而发现各种各样的板卡。

windy的博客 4002

Rust嵌入式开发环境搭建指南(基于Stm32+Vscode)

本文档旨在指导开发者如何搭建基于Rust语言的STM32嵌入式开发环境。相比传统的C/C++开发方式,Rust提供了更强的内存安全保障和现代化的语言特性,非常适合嵌入式系统开发。本指南将详细介绍从环境搭建到项目配置的全过程,特别关注VSCode作为IDE的配置以及STLink和DAPLink调试器的使用。

u014627020的博客 2593

GD32F307 USB主机模式 外接U盘升级 调试问题记录

在移植USB驱动做主机读U盘时遇到的问题。 问题1、移植USB驱动完成后,插入U盘,一直在 usbh_core_task 的默认case 和测试case中反复执行无法执行到后面的连接及以后得步骤。 问题2、在 usbh_core_task 函数中,一直卡在枚举的case,无法执行下面操作。具体卡在urb_wait的while循环无法跳出。

LGC_764385701的博客 1946

深入解析PCIe Retimer:工作原理与典型应用场景

本文深入解析了PCIe Retimer的工作原理与核心价值。作为高速信号的中继再生器,Retimer通过时钟数据恢复和信号再生技术,有效解决长距离或复杂通道中的信号衰减与完整性问题,从而极大地扩展了PCIe链路的有效传输距离。文章详细阐述了其内部架构、自动与手动两种工作模式,并重点介绍了在长距离板间互连、复杂背板设计等典型应用场景中的关键作用。

weixin_29195615的博客 492

Halcon深度学习2 -- 标注工具Deep Learning Tool下载安装

Deep Learning Tool为Halcon开发公司MVTec官方提供的一款标注工具: 标记培训数据是任何深度学习应用程序的关键的第一步。 当涉及到应用程序的性能,准确性和健壮性时,此标记数据的质量起着重要作用。 借助MVTec深度学习工具,我们正在为HALCON用户创建全面流畅的深度学习体验。 通过开发我们自己的解决方案,我们确保可以将其输出无缝集成到HALCON中。 该应用程序还使我们能够吸收在开发HALCON深度学习算法时获得的丰富经验和专业知识,而该算法自然也涉及很多标签! Deep.

fengyingv的博客 1万+

关节电机技术全解析:原理、双编码器、控制方法与硬件选型

关于关机电机的组成,技术原理,特点以及选型等方面的详细介绍,可以帮助快速学习关节电机相关内容!

start_up_go的博客 671

CesiumForUnreal实现鹰眼地图(MiniMap)效果

CesiumForUnreal实现鹰眼地图(MiniMap)效果

专注GIS开发 3947

Ceres&OpenCV 单目相机标定(论文复现)

Ceres&OpenCV 单目相机标定(论文复现)

dayuhaitang1的博客 358

C++经典面试题100例及答案

答:把一些具有共性的对象归类后形成一个集合,也就是所谓的类。答:这样可以提高编译效率,因为分开的话只需要编译一次生成对应的.obj文件后,再次应用该类的地方,这个类就不会被再次编译,从而大大的提高了编译效率。答:这种函数会自动为内联函数,这种函数在函数调用的地方在编译阶段都会进行代码替换。答:常对象是指在任何场合都不能对其成员的值进行修改的对象。答:所谓的回调函数,就是预先在系统的对函数进行注册,让系统知道这个函数的存在,以后,当某个事件发生时,再调用这个函数对事件进行响应。

usstmiracle的博客 3万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: 【OpenBMC 系列】0.OpenBMC features & 名词介绍
下一篇: 【OpenBMC 系列】2.OpenBMC镜像编译流程以及如何加速编译
AiFool
博客等级 码龄11年 7754粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AiFool

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值