当前位置: 首页 > news >正文

冷库网站建设学校网站建设的意义和目的

冷库网站建设,学校网站建设的意义和目的,长春网站制作,网站建设 天佩营销修改原有程序 通常情况下我们会需要修改OpenBMC原有的程序来适配我们的项目#xff0c;本节将介绍一般的流程。 为此首先我们需要了解devtool这个工具#xff0c;注意它不是前端开发用的那个devtool#xff0c;而是由OE#xff08;或者Yocto#xff1f;#xff09;提供…修改原有程序 通常情况下我们会需要修改OpenBMC原有的程序来适配我们的项目本节将介绍一般的流程。 为此首先我们需要了解devtool这个工具注意它不是前端开发用的那个devtool而是由OE或者Yocto提供的一个用于构建、测试和打包程序的工具在7 devtool Quick Reference — The Yocto Project ® 4.2.999 documentation有具体的介绍我们一般用它来编辑和打包源代码。 devtool的帮助说明如下 jwHOME:~/openbmc/build$ devtool --help NOTE: Starting bitbake server... usage: devtool [--basepath BASEPATH] [--bbpath BBPATH] [-d] [-q] [--color COLOR] [-h] subcommand ...OpenEmbedded development tooloptions:--basepath BASEPATH Base directory of SDK / build directory--bbpath BBPATH Explicitly specify the BBPATH, rather than getting it from the metadata-d, --debug Enable debug output-q, --quiet Print only errors--color COLOR Colorize output (where COLOR is auto, always, never)-h, --help show this help message and exitsubcommands:Beginning work on a recipe:add Add a new recipemodify Modify the source for an existing recipeupgrade Upgrade an existing recipeGetting information:status Show workspace statussearch Search available recipeslatest-version Report the latest version of an existing recipecheck-upgrade-status Report upgradability for multiple (or all) recipesWorking on a recipe in the workspace:build Build a reciperename Rename a recipe file in the workspaceedit-recipe Edit a recipe filefind-recipe Find a recipe fileconfigure-help Get help on configure script optionsupdate-recipe Apply changes from external source tree to recipereset Remove a recipe from your workspacefinish Finish working on a recipe in your workspaceTesting changes on target:deploy-target Deploy recipe output files to live target machineundeploy-target Undeploy recipe output files in live target machinebuild-image Build image including workspace recipe packagesAdvanced:create-workspace Set up workspace in an alternative locationextract Extract the source for an existing recipesync Synchronize the source tree for an existing recipemenuconfig Alter build-time configuration for a recipeexport Export workspace into a tar archiveimport Import exported tar archive into workspace Use devtool subcommand --help to get help on a specific command下面开始介绍如何修改源码并最终将修改之后的结果放到我们自己的项目中使用这里以webui-vue为例。 首先我们创建一个workspace用来放置源码前面已经提到过OpenBMC框架中并没有实际的代码而是需要在构建的过程中下载来具体存放的位置就是build下的download目录 jwHOME:~/openbmc/build$ ls downloads/ Cython-0.29.33.tar.gz git2_source.denx.de.u-boot.u-boot.git.tar.gz nbd-3.24.tar.xz Cython-0.29.33.tar.gz.done git2_source.denx.de.u-boot.u-boot.git.tar.gz.done nbd-3.24.tar.xz.done Jinja2-3.1.2.tar.gz git2_sourceware.org.git.glibc.git.tar.gz net-snmp-5.9.3.tar.gz Jinja2-3.1.2.tar.gz.done git2_sourceware.org.git.glibc.git.tar.gz.done net-snmp-5.9.3.tar.gz.done # 后面略这些压缩包不应该直接去修改为此我们先创建一个目录来存放解压缩之后的源代码这里通过devtool的create-workspace子命令来创建存放源代码的目录执行的命令如下 jwHOME:~/openbmc/build$ devtool create-workspace NOTE: Starting bitbake server... NOTE: Reconnecting to bitbake server... NOTE: Retrying server connection (#1)... (22:46:33.532066) NOTE: Reconnecting to bitbake server... NOTE: Reconnecting to bitbake server... NOTE: Retrying server connection (#1)... (22:46:33.532066) NOTE: Retrying server connection (#1)... (22:46:33.532066) NOTE: Starting bitbake server...此时build下就会多一个workspace目录 jwHOME:~/openbmc/build$ ls bitbake-cookerdaemon.log cache conf downloads sstate-cache tmp workspace jwHOME:~/openbmc/build$ tree workspace/ workspace/ ├── README └── conf└── layer.conf1 directory, 2 files里面也会有一个layer文件实际上create-workspace就是创建了一个新的分层并且还会修改build目录下的bblayers.conf文件来包含这个分层这样这里面的代码才会在后续被编译和使用 BBLAYERS ? \/home/jw/openbmc/meta \/home/jw/openbmc/meta-poky \/home/jw/openbmc/meta-openembedded/meta-oe \/home/jw/openbmc/meta-openembedded/meta-networking \/home/jw/openbmc/meta-openembedded/meta-python \/home/jw/openbmc/meta-phosphor \/home/jw/openbmc/meta-aspeed \/home/jw/openbmc/meta-beni \/home/jw/openbmc/build/workspace \ # 这个就是新增的之后我们找一个配方来修改其代码这里就以webui-vue为例 jwHOME:~/openbmc/build$ bitbake -s | grep webui phosphor-webui :1.0gitAUTOINCe16bb5c358-r1 webui-vue :1.0gitAUTOINC0f6147ca25-r1我们需要解压它的源码并放到workspace目录中为此需要执行devtool的modify子命令 jwHOME:~/openbmc/build$ devtool modify webui-vue NOTE: Starting bitbake server... NOTE: Reconnecting to bitbake server... NOTE: Retrying server connection (#1)... (22:50:43.681700) Loading cache: 100% |###############################################################################################################| Time: 0:00:00 Loaded 4383 entries from dependency cache. Parsing recipes: 100% |###############################################################################################################| Time: 0:00:00 Parsing of 2709 .bb files complete (2708 cached, 1 parsed). 4384 targets, 566 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependenciesBuild Configuration: BB_VERSION 2.4.0 BUILD_SYS x86_64-linux NATIVELSBSTRING ubuntu-20.04 TARGET_SYS arm-openbmc-linux-gnueabi MACHINE beni-ast2500 DISTRO openbmc-phosphor DISTRO_VERSION nodistro.0 TUNE_FEATURES arm thumb arm1176jzs TARGET_FPU soft meta meta-poky meta-oe meta-networking meta-python meta-phosphor meta-aspeed HEAD:67c9d4e715c705cd05fd04f7c8cd4fad300a4666 meta-beni master:37708567fc4efacfcba74f8274edc924e7ba7a1e workspace HEAD:67c9d4e715c705cd05fd04f7c8cd4fad300a4666Initialising tasks: 100% |###############################################################################################################| Time: 0:00:00 Sstate summary: Wanted 0 Local 0 Mirrors 0 Missed 0 Current 20 (0% match, 100% complete) NOTE: Executing Tasks NOTE: Tasks Summary: Attempted 93 tasks of which 90 didnt need to be rerun and all succeeded. INFO: Source tree extracted to /home/jw/openbmc/build/workspace/sources/webui-vue INFO: Using source tree as build directory since that would be the default for this recipe INFO: Recipe webui-vue now set up to build from /home/jw/openbmc/build/workspace/sources/webui-vue此时再次查看workspace目录 jwHOME:~/openbmc/build$ tree workspace/ workspace/ ├── README ├── appends │ └── webui-vue_git.bbappend ├── conf │ └── layer.conf └── sources└── webui-vue├── # 中间略└── vue.config.js97 directories, 318 files然后我们修改webui-vue中的某些代码这里修改登录界面的LOGO替换成Apple的音乐图标。重新编译webui-vue jwHOME:~/openbmc/build$ devtool build webui-vue NOTE: Starting bitbake server... NOTE: Reconnecting to bitbake server... NOTE: Retrying server connection (#1)... (23:04:57.342934) Loading cache: 100% |###############################################################################################################| Time: 0:00:00 Loaded 4383 entries from dependency cache. Parsing recipes: 100% |###############################################################################################################| Time: 0:00:00 Parsing of 2709 .bb files complete (2707 cached, 2 parsed). 4384 targets, 566 skipped, 0 masked, 0 errors. Removing 1 recipes from the allarch sysroot: 100% |###############################################################################################################| Time: 0:00:03 Removing 1 recipes from the beni_ast2500 sysroot: 100% |###############################################################################################################| Time: 0:00:00 Loading cache: 100% |###############################################################################################################| Time: 0:00:03 Loaded 4383 entries from dependency cache. Parsing recipes: 100% |###############################################################################################################| Time: 0:00:00 Parsing of 2709 .bb files complete (2707 cached, 2 parsed). 4384 targets, 566 skipped, 0 masked, 0 errors. NOTE: Resolving any missing task queue dependenciesBuild Configuration: BB_VERSION 2.4.0 BUILD_SYS x86_64-linux NATIVELSBSTRING ubuntu-20.04 TARGET_SYS arm-openbmc-linux-gnueabi MACHINE beni-ast2500 DISTRO openbmc-phosphor DISTRO_VERSION nodistro.0 TUNE_FEATURES arm thumb arm1176jzs TARGET_FPU soft meta meta-poky meta-oe meta-networking meta-python meta-phosphor meta-aspeed HEAD:67c9d4e715c705cd05fd04f7c8cd4fad300a4666 meta-beni master:37708567fc4efacfcba74f8274edc924e7ba7a1e workspace HEAD:67c9d4e715c705cd05fd04f7c8cd4fad300a4666Initialising tasks: 100% |###########################################################################################################| Time: 0:00:00 Sstate summary: Wanted 0 Local 0 Mirrors 0 Missed 0 Current 94 (0% match, 100% complete) NOTE: Executing Tasks NOTE: webui-vue: compiling from external source tree /home/jw/openbmc/build/workspace/sources/webui-vue NOTE: Tasks Summary: Attempted 435 tasks of which 427 didnt need to be rerun and all succeeded.可以看到编译没有问题说明修改本身也没有问题下面的步骤就需要合入修改的代码。 由于实际的源码是下载来的压缩包所以无法直接修改因此为了使最终结果生效我们需要采取的方式是打补丁为此先需要合入代码这需要通过git commit的方式 jwHOME:~/openbmc/build/workspace/sources/webui-vue$ git commit -m [ADD]Modify. src/assets/images/applemusic.svg --no- verify [devtool 53f5b88] [ADD]Modify.1 file changed, 1 insertion()create mode 100644 src/assets/images/applemusic.svg jwHOME:~/openbmc/build/workspace/sources/webui-vue$ git commit -m [ADD]Modify. --no-verify src/layouts/LoginLayout.vue [devtool 02f4773] [ADD]Modify.1 file changed, 1 insertion(), 1 deletion(-)这里增加了一个SVG图片修改了Web的一行代码指向新的图片总共有两个修改都合入即可。然后通过devtool的update-recipe子命令生成补丁和对应的bbappend文件并存放在我们的自定义项目目录中 jwHOME:~/openbmc/build$ devtool update-recipe webui-vue -a ../meta-beni/ NOTE: Starting bitbake server... NOTE: Reconnecting to bitbake server... NOTE: Retrying server connection (#1)... (00:14:14.267139) Loading cache: 100% |####################################################################################| Time: 0:00:00 Loaded 4382 entries from dependency cache. Parsing recipes: 100% |##################################################################################| Time: 0:00:00 Parsing of 2709 .bb files complete (2707 cached, 2 parsed). 4384 targets, 566 skipped, 0 masked, 0 errors. NOTE: Writing append file /home/jw/openbmc/meta-beni/recipes-phosphor/webui/webui-vue_git.bbappend NOTE: Copying 0001-ADD-Modify.patch to /home/jw/openbmc/meta-beni/recipes-phosphor/webui/webui-vue/0001-ADD-Modify.patch NOTE: Copying 0002-ADD-Modify.patch to /home/jw/openbmc/meta-beni/recipes-phosphor/webui/webui-vue/0002-ADD-Modify.patch得到的结果 └── recipes-phosphor├── packagegroups│ └── packagegroup-obmc-apps.bbappend└── webui # 新增目录├── webui-vue│ ├── 0001-ADD-Modify.patch│ └── 0002-ADD-Modify.patch└── webui-vue_git.bbappend这样补丁文件就已经在我们自己的项目中了之后可以将webui-vue在workspace中的内容删除 jwHOME:~/openbmc/build$ devtool reset webui-vue NOTE: Starting bitbake server... INFO: Cleaning sysroot for recipe webui-vue... INFO: Preserving source tree in /home/jw/openbmc/build/workspace/attic/sources/webui-vue.20230809002034 If you no longer need it then please delete it manually. It is also possible to reuse it via devtool source tree argument.此时源码还在不过已经变了名字了如果不需要就手动删除即可。 最后重新编译OpenBMC二进制成功之后执行该二进制然后通过浏览器再次访问BMC的Web得到的登录界面变成了如下的样子 红框部分就是新的LOGO。 到此修改OpenBMC原有程序的操作就已经完成了。
http://www.sadfv.cn/news/63778/

相关文章:

  • 网站建设中最基本的决策江西住房和城乡建设厅网站
  • scratch编程网站讯美网站建设
  • 有哪个网站可以学做面条开面馆wordpress修改域名文件夹
  • 免费建站哪个网站最好深圳wordpress培训
  • 国外网站流量免费物流公司网站模板
  • 璧山集团网站建设电商平台运营公司
  • 深圳动力网站设计公司wordpress随机图片
  • 建设银行投资网站首页哈尔滨市建设安全监察网站
  • 外贸网站怎么做关键词建设电影网站赚钱
  • asp网站源码+access+机械建设银行亚洲网站
  • 网站建设一般要素太平洋建设集团有限公司
  • 网站建设报告书范文微商引流的最快方法是什么
  • 山东建设发展研究院网站软文推广收费
  • 网页及网站建设用什么软件免费查企业信息查询
  • 成都市住房和城乡建设厅官方网站天津整站
  • 四川省安监站网址汾阳网架公司
  • 网站制作有什么好的介绍文化投资的微网站怎么做
  • 装修上什么网站比较好郑州网站建设创新网络
  • 南京做网站优化哪家好宿迁房产网官网备案
  • 网站建设文章缩略图沈阳百度推广哪家好
  • 女做受视频网站网站建设自查维护报告
  • 上海微信网站开发精简wordpress博客程序
  • 紫川网站建设百度怎样发布作品
  • 中国城乡住房建设厅网站首页上海集团网站建设
  • asp网站开发wordpress给文章设置标签
  • 突泉建设局三务公开网站cfa一级看多久两分钟
  • 企业建设网站个人总结报告个人如何建立微信公众号
  • 网站代码在哪里看wordpress json ld
  • 长春做网站的公司有哪些怎样自己做网站卖钱
  • 网站底部关键词内链3分钟搞定网站seo优化外链建设