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

PetaLinux工程的常用命令——petalinux-build

petalinux-build:编译项目或指定组件。

注:有些命令我没用过,瞎翻译有可能会翻译错了。

用法:

  petalinux-build [options]


可选参数:

  -h, --help
        显示函数用法。

  -p, --project <PROJECT>
        PetaLinuxSDK项目的路径。默认值是当前Shell工作路径下的项目

  -c, --component <COMPONENT>
        指定需要编译的组件,程序会编译该组件及其依赖。
        如: -c rootfs
                -c myapp

  -x, --execute <tasks of bitbake>
        指定组件的bitbake任务。
        要了解组件的列表任务,请执行以下操作:
        -x do_listtasks

  -f, --force
        忽略戳记强制运行特定任务。强制运行必须针对组件或其任务。如:
        -c myapp -f
        -c myapp -x compile -f

  -v, --verbose
        显示详细的编译过程。

  -s, --sdk
        编译SDK ==> do_populate_sdk

  -e, --esdk
        编译最小eSDK ==> do_populate_sdk_ext

  -a|--archiver
        在images/linux 文件夹中创建包含源文件和许可证的archiver.tar.gz文件。


例子:

编译项目:
  $ petalinux-build
  可引导映像位于 <PROJECT>/images/linux/.

编译具有archiver的项目:
  $ petalinux-build -a | --archiver

编译SDK :
  $ petalinux-build --sdk | -s
  等效的bitbake任务是do_populate_sdk,编译到的sdk部署在 <PROJECT>/images/linux/sdk.sh

编译最小eSDK :
  $ petalinux-build --esdk | -e
  等效的bitbake任务是do_populate_sdk_ext,编译到的esdk部署在 <PROJECT>/images/linux/esdk.sh
  这可以通过用户源代码更改导入到petalinux工具中。

编译具有archiver的SDK:
  $ petalinux-build --sdk --archiver

仅编译内核:
  $ petalinux-build -c kernel

强制编译内核:
  $ petalinux-build -c kernel -x compile -f

强制部署内核:
  $ petalinux-build -c kernel -x deploy -f

构建内核并更新可引导映像:
  $ petalinux-build -c kernel
  $ petalinux-build -x package

仅编译根目录:
  $ petalinux-build -c rootfs

仅编译根目录的myapp:
  $ petalinux-build -c myapp

列出所有根目录的子组件:
  $ petalinux-build -c rootfs -h

清理u-boot并再次编译:
  $ petalinux-build -c u-boot -x distclean
  ## 上面的命令将删除u-boot的tmp文件和sstate缓存。
  $ petalinux-build -c u-boot

清理项目构建并重新构建:
  $ petalinux-build -x distclean
  ## 上面的命令将删除tmp文件和sstate缓存文件。
  $ petalinux-build

清理项目构建和生成的可引导映像:
  $ petalinux-build -x mrproper
  ## 上面的命令将删除tmp文件、 <PROJECT>/images/、<PROJECT>/build/ 以及<PROJECT>/components/plnx_workspace目录
 

http://www.lryc.cn/news/460728.html

相关文章:

  • 【Qt】窗口预览(1)—— 菜单栏
  • 揭秘酱香型白酒中的6大劣质酒的特点,守好你的健康与钱包
  • C#拓展方法
  • 02.顺序表、链表简述+对比
  • 前端布局与响应式设计综合指南(三)
  • 当今SNARKs全景
  • PMP敏捷专题课:敏捷原则与理念
  • 有两个水桶,容量分别为5升和3升,请问如何使用这两个桶得到4升的水?
  • pytorch_lightning笔记
  • 从零开始了解云WAF,您的网站安全升级指南
  • Python脚本爬取目标网站上的所有链接
  • Linux下以编译源码的方式安装Qt5与Qt6及其使用
  • 替换掉js后重启nginx 页面加载后js还是原来的 解决方法.【js版本号】【js不生效】【js失效】
  • SHELL脚本之输出语句的使用
  • 《大规模语言模型从理论到实践》第一轮学习--Fine-tuning微调
  • XGBoost回归预测 | MATLAB实现XGBoost极限梯度提升树多输入单输出
  • 【翻译】在 Python 应用程序中使用Qt Designer的UI文件
  • 002-Html
  • 微知-Mellanox提供的一个不错的测试rdma_cm方式建链的工具软件ucmatose?(ucmatose; ucmatose -s 1.1.1.1)
  • Vivado HLS C/RTL 联合仿真时间
  • Python实现图像加密与解密工具
  • 《RabbitMQ篇》消费者轮询消费消息
  • mongodb导入导出
  • 判断 HTTP/2 多路复用是否在服务器上实现
  • (已解决)vscode使用launch.json进行debug调试报错:Couldn‘t spawn debuggee:embedded null byte
  • windows桌面便签小工具,便签软件哪个好用?
  • 【Linux】C文件头文件数裁剪前58644个,裁剪后9373个
  • 线性自抗扰控制(LADRC)系统算法框图
  • 基于SSM的微信小程序博客管理系统(博客1)
  • text-behind-image:轻松创建文字背景图片设计