OpenBmc开发8:devtool简介与使用

OpenBmc开发8:devtool简介与使用1简介devtool是yocto中的一个工具,此命令行工具作为可扩展SDK(eSDK)的一部分,是基础组件。可以使用devtool来帮助构建,测试和打包eSDK中的软件。可以使用该工具有选择地将构建的内容集成到OpenEmbedded构建系统构建的映像中。一般我们使用该工具主要用于修改源码,在修改后将提交加入到指定的layer中。2命令介绍常用的命令是:Add添加recipesModify提取源码Up…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

1 简介

devtool是yocto中的一个工具,此命令行工具作为可扩展SDK(eSDK)的一部分,是基础组件。可以使用devtool来帮助构建,测试和打包eSDK中的软件。可以使用该工具有选择地将构建的内容集成到OpenEmbedded构建系统构建的映像中。一般我们使用该工具主要用于修改源码,在修改后将提交加入到指定的layer中。

2 命令介绍

常用的命令是:

add                      添加recipes

modify                  提取源码

upgrade               更新recipes

serch                   搜索package

OpenBmc开发8:devtool简介与使用

3 工作流程

3.1 devtool add

根据现有源代码生成新配方。该命令利用了工作目录下的devtool。该命非常灵活,可让您将源代码提取到工作区或单独的本地Git存储库中,并使用不需要提取的现有代码。依赖于使用场景,使用的参数和选项会devtool add形成不同的组合。下图显示了将与devtool add 命令一起使用的常见开发流程:

  1. devtool edit recipes
  2. devtool build recipes
  3. devtool deploy-target recipes
  4. devtool finish recipes

OpenBmc开发8:devtool简介与使用

 

3.2 devtool modify

devtool modify命令提取代码以用于修改。该命可让提取代码,指定现有配方以及跟踪并收集来自与该代码相关联的其他开发人员的任何补丁文件。下图显示了将与devtool modify 命令一起使用的常见开发流程: 

  1. devtool edit recipes
  2. devtool modify softname
  3. devtool build
  4. devtool finish

OpenBmc开发8:devtool简介与使用

3.3 devtool upgrade

devtool upgrade命令将更新现有配方,该命令指定源代码修订和版本控制方案,将代码提取到devtool工作空间中或从工作空间中提取代码,以及使用提取程序支持的任何源文件格式。下图显示了将与devtool modify 命令一起使用的常见开发流程:

  1. devtool upgrade
  2. devtool build
  3. devtool deploy-target
  4. devtool finish

OpenBmc开发8:devtool简介与使用

 

4 使用示例

4.1 提取源码

查找软件包

bitbake -s | grep <softname>

bitbake -s 命令可以查看全部软件包名。

以提取u-boot为例

devtool modify u-boot

提取源码前:

OpenBmc开发8:devtool简介与使用

 提取源码:

OpenBmc开发8:devtool简介与使用

 在build文件夹下增加了workspace文件存放源码:

OpenBmc开发8:devtool简介与使用

该命令将修改build/conf/bblayers.conf文件,新增加worspace路径:

OpenBmc开发8:devtool简介与使用

 

源码文件夹结构:

OpenBmc开发8:devtool简介与使用

appends/u-boot-aspeed_2016.07.bbappend文件是u-boot的recipes

sources/u-boot-aspeed文件夹下是u-boot的源码。

每次修改后执行bitbake命令都会从新编译u-boot。

4.2 删除源码

如果要去除修改:(这里在提取使用u-boot时系统会自动连接到u-boot-aspeed,但是删除时候需要使用u-boot-aspeed否则会报错)

devtool reset u-boot-aspeed

OpenBmc开发8:devtool简介与使用

执行此命令会删除build/workspace/appends/u-boot-aspeed_2016.07.bbappend文件,而不会删除build/conf/bblayers.conf中的workspace一行,因为此处只删除了u-boot修改,实际使用中可能还要用到修改后的kernel等软件。此外,source下的源码也需要自己手动删除。

注:可以直接手动删除build/workspace/appends/xxx.bbappend文件,同样达到reset命令效果。

 

 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/185647.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java AbstractMethodError 原因分析

    Java AbstractMethodError 原因分析背景AbstractMethodError异常对于我来说还是比较不常遇见的,最近有幸遇到,并侥幸的解决了,在这里把此种场景剖析一番,进入正题,下面是AbstractMethodError在Java的异常机制中所处的位置:现在明确了AbstractMethodError所具有的特性:1.它是Error的子类,Error类及其子类都是被划分在非检查异常之列的,就是说这些异常不能在编译阶…

    2022年6月2日
  • 极电竞比分网(js逆向,webpack)「建议收藏」

    目标网站:https://www.jdj007.com/目标参数:sign全局搜索sign在第一个js文件里找到可疑加密位置通过观察sign参数可以猜到加密的最后一步可能用到了url编码,而这里可以看到encodeURIComponent,因此断定这里是加密位置。s.a.stringify(n)是加密的关键,因此首先我们要找的就是n,可以看到n=i()(t),通过断点我们可以看到t=“timestamp=1604631529347&secret=aHVheWluZ19zZWNy

    2022年4月6日
  • Python 标识符与关键字[通俗易懂]

    Python 标识符与关键字[通俗易懂]Python标识符与关键字标识符是编程语言中允许作为名字的有效字符串集合。其中有一部分是关键字,构成语言的标识符。这种标识符是不能做它用的标识符的,否则会引起语法错误(SyntaxError异常)。标识符就是一个名字,作为变量、函数、类、模块以及其他对象的名称。1.Python标识符第一个字符必须是字母(A~Z和a~z)或下划线(_),剩下的字符可以是字母和数字或下划线,大小写敏感。标识符由字母、下划线和数字(0~9)组成,且不能以数字开头,Python中的标识符是区分大

    2022年9月10日
  • 怎么用postman测试websocket

    怎么用postman测试websocketwebsocket学习定义优点用法参考文献菜鸟教程怎么用postman测试websocket因为升级请求是被postman拦截的,所以,只要配置一下拦截器就好了,具体配置方法百度一下吧。然后在header中加上两个key-value即可。Upgrade:websocketConnection:Upgrade2.基础用法3.当然,这些都不如在线测试webs……

    2022年7月11日
  • Java 9 逆天的十大新特性

    Java 9 逆天的十大新特性

    2021年5月25日
  • 字符串匹配算法_多字符串匹配

    字符串匹配算法_多字符串匹配文章目录1.BM(Boyer-Moore)算法1.BM(Boyer-Moore)算法思想:有模式串中不存在的字符,那么肯定不匹配,往后多移动几位,提高效率BM原理:坏字符规则,好后缀规则…

    2022年8月21日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号