devtool使用介绍(2)

article/2025/9/29 1:27:43

devtool使用介绍2

    • 2.4.2 使用devtool Modify修改现有组件的来源

2.4.2 使用devtool Modify修改现有组件的来源

devtool Modify命令为使用已有代码的现有代码作准备,该代码已具有用于构建软件的本地recipe。 该命令足够灵活,可让你从上游源提取代码,指定现有recipe,并跟踪并收集与该代码关联的其他开发人员的任何补丁文件。
根据你的特定方案,与devtool一起使用的参数和选项会修改为不同的组合。 下图显示了devtool Modify命令的常见开发流程:
在这里插入图片描述

  1. 准备修改代码:该流程的顶部显示了三种方案,你可以通过它们使用devtool Modify来准备对源文件进行处理。每个方案都假定以下条件:
  • recipe存在于本地devtool工作空间外部的一层中。

  • 源文件以未提取状态存在于上游,或者以先前提取的状态存在于本地。
    典型的情况是,另一个开发人员创建了一个与Yocto Project一起使用的层,而他们的recipe已经驻留在该层中。 此外,它们的源代码可以在上游或本地轻松获得。

  • Left:图中的左场景代表一种常见情况,其中源代码在本地不存在,需要从上游源中提取。在这种情况下,源被提取到默认的devtool工作区位置。 在这种情况下,recipe位于工作空间之外的其自己的层中(即,meta-layername)。
    以下命令标识recipe,并且默认情况下提取源文件:

$ devtool modify recipe

一旦devtool找到了recipe,devtool将使用recipe的SRC_URI语句来定位源代码和其他开发人员提供的任何本地补丁文件。
在这种情况下,不存在srctree参数。 因此,devtool Modify命令的默认行为是将SRC_URI语句指向的源文件提取到本地Git结构中。 此外,提取的源的位置是devtool工作空间中的默认区域。 结果是,当recipe保留在其原始位置时,该命令将在工作空间内设置源代码和附加文件。

另外,如果你有任何非修补程序本地文件(即,在SRC_URI语句中用file://条目引用的文件,但* .patch /或* .diff除外),这些文件将被复制到“本地”目录下的oe-local-files文件夹中。新创建的源树。 将文件复制到此处为你提供了一个方便的区域,你可以从中修改文件。 下次你构建软件时,对这些文件所做的任何更改或添加都将合并到版本中,就像你可能对源所做的其他更改一样。

  • Left:图中中间部分的情况表示源代码在本地不存在的情况。在这种情况下,代码再次位于上游,需要作为Git存储库提取到某些本地区域。注意recipe仍然是本地的,并且位于工作空间之外的其自己的层中。
    以下命令告诉devtool使用的方法,在这种情况下,为默认devtool工作空间之外存在的提取源文件标识本地区域:
$ devtool modify recipe srctree
注意
你不能使用devtool命令为srctree提供URL。

与所有提取一样,该命令使用recipe的SRC_URI语句查找源文件和任何关联的补丁文件。 非补丁文件将复制到新创建的源树下的oe-local-files文件夹中。找到文件后,默认情况下,该命令会将其提取到srctree中。
在工作空间中,devtool为recipe创建一个附加文件。 recipe保留在其原始位置,但是源文件被提取到你通过srctree提供的位置。

  • Right:图中右侧场景代表了一种情况,其中源树(srctree)作为本地先前在devtool工作区之外提取的Git结构已经存在于本地。 在此示例中,该recipe还存在于其自身层中本地的其他位置。
    以下命令告诉devtool使用的recipe,使用“ -n”选项指示不需要提取源,并使用srctree指向先前提取的源文件:
$ devtool modify -n recipe srctree

如果oe-local-files子目录恰好存在并且包含非补丁文件,则使用这些文件。 但是,如果子目录不存在,并且你运行devtool finish命令,那么该食谱旁边可能存在的所有非补丁文件都将被删除,因为它似乎在devtool中已经删除了这些文件。
一旦devtool Modify命令完成,它只会在devtool工作区中为recipe创建一个附加文件。recipe和源代码保留在其原始位置

  1. 编辑源代码:使用devtool Modify命令后,你可以自由更改源文件。你可以使用任何喜欢的编辑器进行并保存源代码修改。

3.构建recipe或重建图像:下一步主要取决于对新代码的处理方式。
如果最终需要将构建输出移至目标硬件,请使用以下devtool命令:

$ devtool build recipe

另一方面,如果你希望映像包含来自工作区的recipe软件包以立即部署到设备上(例如,出于测试目的),则可以使用devtool build-image命令:$ devtool build-image image

  1. 部署构建输出:使用devtool build命令扩展recipe时,你可能希望查看生成的构建输出是否在目标硬件上按预期工作。
注意
此步骤假定你具有一个先前构建的映像,该映像已经在QEMU中运行或在实际硬件上运行。 另外,假设为了将映像部署到目标,在映像中安装了SSH,并且如果映像在可以从开发计算机进行网络访问的真实硬件上运行。

你可以使用devtool deploy-target命令将构建输出部署到该目标硬件:

$ devtool deploy-target recipe target

目标是作为SSH服务器运行的实时目标计算机。当然,你可以使用其他方法将使用devtool build-image命令构建的映像部署到实际硬件。devtool没有提供将映像部署到实际硬件的特定命令。

  1. 使用recipe完成工作:devtool finish命令会在本地Git存储库中创建与提交对应的所有补丁,更新recipe以指向它们(或创建一个.bbappend文件来这样做,具体取决于指定的目标层),然后重置recipe,以便recipe是正常构建的,而不是从工作空间构建的。
$ devtool finish recipe layer
注意
在使用devtool finish命令之前,必须在本地Git存储库中暂存并提交要转换为补丁程序的任何更改。

由于无需移动recipe,因此devtool finish可以在原始层中更新原始recipe,也可以在该命令所提供的不同层中创建一个.bbappend文件。 在devtool finish命令期间,你在oe-local-files目录中所做的任何工作都会保留在recipe旁边的原始文件中。
作为devtool finish命令的最后过程,将还原标准层和上游源的状态,以便你可以从这些区域而不是从工作区构建recipe。

注:如果你决定不想继续进行工作,则可以使用devtool reset命令将内容放回原处。如果确定使用此命令,请记得保留源码树。

http://chatgpt.dhexx.cn/article/ZiIkNWIf.shtml

相关文章

webpack——devtool配置及sourceMap的选择

官方手册传送门 官方对devtool配置的定义很简单:选择一种 source map 格式来增强调试过程,不同的值会明显影响到构建build和重新构建rebuild的速度。 不过,什么是source map,官方用提供了许多种的source map,其中的区…

webpack:devtool配置中的source map

webpack:devtool配置中的source map 一、功能作用二、配置文件三、source map格式(1)source-map(2)inline-source-map(3)hidden-source-map(4)eval-source-map&#xff0…

sourceMap: devtool 模式以及SourceMapDevToolPlugin的使用

1. 什么是sourceMap sourceMap 是一个信息文件, 维护着代码转换编译前后的映射关系; 2. devtool : 选项控制是否生成,以及如何生成 source map source Map对应的模式 1)inline 2) cheap 3)module 4) eval 5) source-map …

webpack之devtool

关于Devtool 该选项控制是否以及如何生成源映射。官网上给出的可选值有: 其中一些值适合开发,一些用于生产。对于开发,您通常需要快速的Source Maps,以bundle的大小为代价,但是对于生产,您需要独立的Sourc…

chrome devtool使用基础

保存js和css setting > workspace 工作区设置后,自动映射工作区 带绿色图标的文件,不需要请求 blackbox script 黑盒调试,调试不进入第三方代码,只调试项目代码 setting > blackbox 或者鼠标右键设置 network throttling profile 设置网络模式,网速限制,在ne…

Chrome Devtool 使用指南

Chrome Devtool Performance使用指南 运行时性能表现(runtime performance)指的是当你的页面在浏览器运行时的性能表现,而不是在下载页面的时候的表现。这篇指南将会告诉你怎么用Chrome DevToos Performance功能去分析运行时性能表现。在RAI…

devtool使用

记录点没用的东西 1. 引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><version>2.3.2.RELEASE</version> </dependency> 2.pom中加入maven插件 <plugin…

webpack devtool详解

前言 devtool也是之前常用的一个配置&#xff0c;我们稍微了解下吧&#xff0c;不研究太深&#xff0c;毕竟现在都不怎配置他。 内容 devtool是配置sourceMap的。 sourceMap大家都知道&#xff0c;我们本地或者测试环境出了错误&#xff0c;可以在source中迅速定位错误&#x…

devtool配置

devtool配置 一、devtool配置1.source map 源码地图2.webpack中的source map3.对于开发环境 一、devtool配置 1.source map 源码地图 本小节的知识与 webpack 无关 前端发展到现阶段&#xff0c;很多时候都不会直接运行源代码&#xff0c;可能需要对源代码进行合并、压缩、转换…

dev-tool安装方法(手动安装版)

记录一下vue调试神器dev-tool的安装过程&#xff0c;由于是在公司内网&#xff0c;也不方便挂梯子&#xff0c;所以手动安装——下载源码在本地编译&#xff0c;再添加扩展程序的方式安装。过程如下&#xff1a; 一、dev-tool源码获取 git地址&#xff1a;https://github.com/…

一文彻底搞懂webpack devtool

为什么需要Source Map 首先根据谷歌开发者文档的介绍&#xff0c;Source Map一般与下列类型的预处理器搭配使用&#xff1a; 转译器&#xff08;Babel&#xff09;编译器&#xff08;TypeScript&#xff09;Minifiers&#xff08;UglifyJS&#xff09; 为什么呢&#xff1f;…

OpenBmc开发8:devtool简介与使用

1 简介 devtool是yocto中的一个工具&#xff0c;此命令行工具作为可扩展SDK&#xff08;eSDK&#xff09;的一部分&#xff0c;是基础组件。可以使用devtool来帮助构建&#xff0c;测试和打包eSDK中的软件。可以使用该工具有选择地将构建的内容集成到OpenEmbedded构建系统构建…

怎么在navicat(Navicat for MySQL)中运行SQL代码

1、首先在navicat中新建一个数据库&#xff08;之前已经建好数据库&#xff0c;忽略本步&#xff09; 2、点击上图中的“查询”命令 3、再点击“新建查询” 4、系统自动跳出如下图命令窗口 5、可以在命令行中敲代码或直接复制已有代码。如果代码是关于建表&#xff0c;执行成…

使用SQL语句创建数据表

写法一 create table student (sno char(10) primary key,sname varchar(20) not null,ssex char(2),sage smallint,sdept varchar(20),sid char(18) unique)写法二 create table student (sno char(10), sname varchar(20) not null, ssex char(2), sage smallint, sdept v…

SQL代码自动生成器

SQL代码自动生成器&#xff0c;效果图如下&#xff1a; 实现原理很简单&#xff1a; 通过数据库名&#xff0c;获取到数据表名&#xff0c;进而获取到数据字段。通过可视化的选择自定义的添加修改&#xff0c;一步一步完成SQL语句的编写。 其中对于常用的存储过程参数列表的书…

sql语句智能提示插件

1.下载安装 SqlPrompt10 及SQL.Prompt.Keygen注册码生成工具 链接: https://pan.baidu.com/s/1Oa3Ci6o2JjHZMjTXHdCkQg?pwdghew 提取码: ghew 2.修改hosts文件&#xff08;如若跳过此步骤&#xff0c;虽然可以成功&#xff0c;但是重启电脑之后&#xff0c;又得重新操作&a…

sql server代码创建数据库详细过程

1.先打开sql server 2.点击新建查询 3.创建 数据库 主数据文件的大小为5MB&#xff0c;文件【按兆字节】的方式增长&#xff0c;一次增长2MB&#xff0c;最大容量20MB&#xff1b; 事务日志文件大小为4MB&#xff0c;文件【按百分比】的方式增长&#xff0c;一次增长25%&#…

vue实现codemirror代码编辑器中的SQL代码格式化功能

vue实现codemirror代码编辑器中的SQL代码格式化功能 1、首先使用npm安装sql-formatter插件 npm install --save sql-formatter2、然后引入该sql-formatter.js文件 import sqlFormatter from "sql-formatter";3、接下来就是针对需要格式化的代码调用该方法就OK啦 /…

SQL Server 代码颜色

今天初识SQL Server 随便敲了点代码、发现这代码真是五颜六色、既然有颜色就有寓意&#xff01; 原来有这么多颜色、真是学习了! _____________________________chenchen

IDEA格式化SQL代码

IDEA格式化SQL代码 写在前面1.1、建立连接&#xff0c;数据库服务器地址&#xff0c;账号&#xff0c;密码等..1.2、基本操作&#xff0c;很多&#xff0c;增删改查&#xff0c;控制台SQl编写等等 写在前面 IntelliJ IDEA集成了很多我们开发中常用的工具&#xff0c;Linux连接…