玩转OurBMC第三期:OpenBMC的构建与开发流程

栏目介绍:“玩转OurBMC”是OurBMC社区开创的知识分享类栏目,主要聚焦于社区和BMC全栈技术相关基础知识的分享,全方位涵盖了从理论原理到实践操作的知识传递。OurBMC社区将通过“玩转OurBMC”栏目,帮助开发者们深入了解到社区文化、理念及特色,增进开发者对BMC全栈技术的理解。

欢迎各位关注“玩转OurBMC”栏目,共同探索OurBMC社区的精彩世界。同时,我们诚挚地邀请各位开发者向“玩转OurBMC”栏目投稿,共同学习进步,将栏目打造成为汇聚智慧、激发创意的知识园地。

本期内容我们将为您详细介绍在 Linux 环境下编译构建 OpenBMC 的步骤,以及如何使用 devtool 工具修复 bug 和开发新特性的流程。首先,我们将了解 OpenBMC 的基本概念和背景,再逐步介绍编译构建的步骤,最后是如何使用 devtool 工具进行开发和调试。

OpenBMC概述

OpenBMC 是一个开源的基于 Linux 的固件项目,提供了一套丰富的接口和工具,用于管理和控制服务器硬件的底层管理系统。它采用了开源的技术和标准,如 Linux 操作系统、IPMI(Intelligent Platform Management Interface)和 Redfish 等,以提供灵活、可扩展和可管理的服务器管理解决方案。通过 OpenBMC,可以方便地监控和管理服务器的各种硬件组件,例如处理器、内存、硬盘和温度传感器等,提高了服务器管理的效率和可靠性。

编译构建OpenBMC

下面介绍的是 OpenBMC 通用的编译构建步骤。在 OurBMC 下的 OpenBMC 仓库,复制已克隆或下载的代码链接,下载完代码后,执行下面的步骤:

1. 进入OpenBMC源码的顶层目录。

2. 选择要编译的BMC卡,以飞腾公司的E2000S evb-pe2201卡示例。

图片

3. 执行编译构建(注意:首次编译需下载软件包,用时较长,请耐心等待)。

  • 编译构建:

    bitbake obmc-phosphor-image

图片

  • 命令执行完成后,会在 ‘tmp/dempoy/images/evb-pe2201’ 目录下,生成 u-boot 、内核、文件系统、mtd 格式镜像等文件

4. 进入 OpenBMC 编译构建的目录,将 mtd 格式的 bmc 固件包,烧录到 BMC 卡的 flash。启动 BMC 系统,即可测试 BMC 的功能。

OpenBMC开发与调试

OpenBMC 通常使用补丁(patch)的形式,增加新功能、修复 bug。但在开发中,需要在补丁发布前,就能把代码集成到 OpenBMC 做测试验证。为解决前后的依赖问题,OpenBMC 使用 Yocto 自带的 devtool 工具,为 OpenBMC 开发者提供了快捷的代码修改方式。

通常按照下面的步骤,即可对某一软件包的代码做修改:

1. 修改某一软件包

devtool modify <recipe>

2. 进入源码目录,修改代码

cd build/workspace/sources/<recipe>

3. 编译构建BMC固件

bitbake obmc-phosphor-image

将 mtd 格式的固件烧录到 BMC 的 flash,启动 BMC 系统,可测试修改功能是否达到预期。若实现了预期的要求,可使用 “git format-patch” 命令,创建补丁。然后将补丁单独放置到软件包 “recipe” 所在的目录,使用命令重置本地修改(重置某一软件包:devtool reset <recipe>)。最后再次编译构建,检查补丁是否已经生效。

在完成 OpenBMC 的构建与开发流程后,可使用生成的映像文件在目标硬件平台上进行测试和部署。同时,还可进一步开发和定制 OpenBMC 的功能,以满足特定的需求。

此外,为了保持 OpenBMC 的稳定性和安全性,应定期更新代码库和依赖项,并关注官方文档的最新动态,以便及时获取最新的修复和改进。

最后,如果在 OpenBMC 的构建与开发过程中遇到任何问题或困难,可向 OurBMC 社区求助,或者在相关的技术论坛和社区中寻求专业人士的建议和支持。

欢迎大家关注OurBMC社区,了解更多技术干货。

OurBMC社区官方网站:https://www.ourbmc.cn/

  • 13
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OpenBMC(开放式基础管理控制器)是一个开源项目,旨在提供给云计算服务供应商和企业具备完全控制硬件基础设施的能力。编译OpenBMC有以下几个步骤: 首先,安装必要的软件依赖项。在Linux系统中,可以使用包管理器来安装所需的软件包,如GCC编译器、Make工具、Git版本控制工具和其他开发库。 然后,通过Git下载OpenBMC源代码。可以使用以下命令将代码克隆到本地目录: ``` git clone https://github.com/openbmc/openbmc.git ``` 接下来,进入OpenBMC源代码目录,并执行配置命令。通过配置命令,可以选择要编译和安装的组件、目标硬件平台以及其他选项。例如: ``` ./configure --enable-host --enable-phosphor-logging ``` 然后,使用Make工具进行编译。Make会根据配置生成的Makefile文件来编译源代码并生成可执行文件。执行以下命令进行编译: ``` make ``` 编译时间可能会比较长,耐心等待。如果一切顺利,编译完成后将生成可执行文件和库文件等。 最后,进行安装。执行以下命令将编译生成的文件安装到指定的目录中(可以根据需要修改目录): ``` make install DESTDIR=/path/to/installation/directory ``` 安装完成后,可以根据需要进行配置和使用OpenBMC。 需要注意的是,编译OpenBMC可能涉及到额外的配置和依赖项,具体详细步骤可能会因为不同的系统和需求而略有差异,建议参考OpenBMC官方文档和相关社区讨论获取更详尽的指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值