层整合
QIR SDK for Qualcomm Linux 1.0:三个独立的层
对于 Qualcomm Linux 1.0,QIR SDK 的机器人构建分布在三个不同的 OE 层中:| 层 | 职责 |
|---|---|
meta-qcom-robotics | 核心机器人框架:ROS 节点、qrb-ros 软件包、传感器驱动和机器人功能配方 |
meta-qcom-robotics-distro | 发行版配置:发行版 conf 文件、镜像配方定义和软件包组 |
meta-qcom-robotics-sdk | 产品 SDK 打包:SDK 产物打包任务和 qirp-sdk 配方 |
QIR SDK for Qualcomm Linux 2.0:单一统一层
对于 Qualcomm Linux 2.0,QIR SDK 的所有三个层被合并为单一的meta-qcom-robotics-sdk 层。该层的实际目录结构如下:
meta-qcom-robotics-sdk/
├── ci/ # KAS YAML build configuration files
│ ├── base.yml # Base layer configuration (oe-core, meta-qcom, and others)
│ ├── mirror.yml # Shared-state (sstate) cache mirror configuration
│ ├── iq-9075-evk.yml # IQ-9075-EVK machine configuration
│ ├── iq-8275-evk.yml # IQ-8275-EVK machine configuration
│ ├── linux-qcom-6.18.yml # Kernel v6.18 provider configuration
│ ├── linux-qcom-rt-6.18.yml # Real-time (RT) kernel v6.18 provider configuration
│ ├── linux-qcom-next.yml # linux-qcom-next kernel provider configuration
│ ├── qcom-distro.yml # Qualcomm Linux multimedia distribution
│ ├── qcom-distro-kvm.yml # Multimedia distribution with KVM machine feature enabled
│ ├── qcom-robotics-distro.yml # Qualcomm Linux robotics distribution
│ ├── qcom-robotics-distro-catchall.yml # Robotics distro with qcom-distro-catchall variant
│ ├── qcom-robotics-image.yml # Build target: qcom-robotics-image
│ ├── qcom-robotics-proprietary-image.yml # Build target: qcom-robotics-proprietary-image
│ ├── debug.yml # Debug build configuration
│ └── performance.yml # Performance build configuration
├── classes/ # BitBake classes
│ ├── psdk-image.bbclass # SDK artifact generation task
│ ├── robotics-package.bbclass # Robotics package staging helper
│ ├── rdepends-collector.bbclass # Runtime dependency collection
│ └── rootfs-symlink.bbclass # Rootfs symlink management
├── conf/
│ ├── layer.conf # Layer configuration
│ └── distro/
│ ├── qcom-robotics-ros2-jazzy.conf # Distro: ROS 2 Jazzy on Qualcomm Linux
│ ├── qcom-robotics-distro-selinux.conf # Distro: SELinux required configuration
│ ├── qcom-robotics-distro-sota.conf # Distro: OTA required configuration
│ └── include/
│ └── qcom-robotics-sdk.inc # QIR SDK configuration .inc file
├── recipes/ # Feature recipes (qrb-ros packages, sensors, tools)
│ ├── qrb-ros-camera/
│ ├── qrb-ros-nn-inference/
│ ├── qrb-ros-audio-service/
│ ├── qrb-ros-transport/
│ └── ...
├── recipes-bbappends/ # .bbappend files for upstream component adaptation
│ ├── recipe-ros/ # ROS package adaptations (nav2, moveit, etc.)
│ ├── recipe-kernel/ # Kernel config fragments and DTS patches
│ ├── recipe-support/ # Third-party library adaptations
│ └── recipes-containers/ # Container runtime adaptations
├── recipes-products/ # Image and packagegroup definitions
│ ├── images/
│ │ ├── qcom-robotics-image.bb # Open-source robotics image
│ │ └── qcom-robotics-proprietary-image.bb # Robotics image with proprietary packages
│ └── packagegroups/
│ ├── packagegroup-qcom-ros2.bb # ROS 2 Jazzy framework and tools
│ ├── packagegroup-robotics-opensource.bb # Open-source robotics packages
│ ├── packagegroup-oss-with-prop-deps.bb # OSS packages with proprietary runtime deps
│ └── packagegroup-robotics-proprietary.bb # Qualcomm proprietary robotics binaries
├── recipes-sdk/ # QIRP SDK packaging recipe and scripts
│ ├── qirp-sdk.bb
│ └── files/
│ ├── content_config.json
│ ├── install.sh / uninstall.sh
│ └── qrb_ros_samples_scripts/ # Per-sample build/deploy/run scripts
└── patches/ # Patches applied to upstream layers via KAS

