# 디버그

이 정보는 Yocto 기반 작업 영역을 커스터마이즈 하고 일반적인 문제를 해결하는 방법을 설명합니다.

## QDL 및 ModemManager 확인

`systemd` 가 포함된 Linux 배포판을 사용 중이면 `systemctl` 명령어를 사용하여 `ModemManager` 를 중지하세요. 다음은 Ubuntu 22.04의 예시입니다.

1. `ModemManager` 상태를 확인하려면 다음 명령어를 실행합니다.

systemctl status ModemManager
        Copy to clipboard

ModemManager.service - Modem Manager
        Loaded: loaded (/lib/systemd/system/ModemManager.service; enabled; vendor preset: enabled)
        Active: active (running) since Tue 2023-11-28 16:28:15 IST; 3 months 4 days ago
        Main PID: 1338 (ModemManager)
        Tasks: 3 (limit: 4915)
        CGroup: /system.slice/ModemManager.service
                └─1338 /usr/sbin/ModemManager --filter-policy=strict
        Copy to clipboard

ps aux | grep -i modemmanager
        Copy to clipboard

root      1338  0.0  0.0 434332  9544 ?        Ssl   2023  10:39 /usr/sbin/ModemManager --filter-policy=strict
        Copy to clipboard
2. `ModemManager` 를 중지하려면 다음 명령어를 실행합니다.

systemctl stop ModemManager
        systemctl status ModemManager
        Copy to clipboard

ModemManager.service - Modem Manager
        Loaded: loaded (/lib/systemd/system/ModemManager.service; enabled; vendor preset: enabled)
        Active: inactive (dead) since Sun 2024-03-03 20:08:32 IST; 4s ago
        Process: 1338 ExecStart=/usr/sbin/ModemManager --filter-policy=strict (code=exited, status=0/SUCCESS)
        Main PID: 1338 (code=exited, status=0/SUCCESS)
        Copy to clipboard
3. `ps aux` 명령어는 `/usr/sbin/ModemManager` 에 대한 항목을 표시하지 않습니다. `ModemManager` 가 필요한 경우 플래시가 완료된 다음 다시 시작하고, 시작되었는지 확인해야 합니다.

systemctl start ModemManager
        systemctl status ModemManager
        Copy to clipboard

ModemManager.service - Modem Manager
        Loaded: loaded (/lib/systemd/system/ModemManager.service; enabled; vendor preset: enabled)
        Active: active (running) since Sun 2024-03-03 20:11:46 IST; 43s ago
        Main PID: 14785 (ModemManager)
        Tasks: 3 (limit: 4915)
        CGroup: /system.slice/ModemManager.service
                └─14785 /usr/sbin/ModemManager --filter-policy=strict
        Copy to clipboard

ps aux | grep -i modemmanager
        Copy to clipboard

root     14785  4.6  0.0 434332  9160 ?        Ssl  20:11   0:00 /usr/sbin/ModemManager --filter-policy=strict
        Copy to clipboard

## 빌드에서 제외된 새로 추가된 계층 확인

BitBake가 새로 추가된 계층을 구문 분석하지 않은 경우 해당 계층의 레시피가 이미지에 포함되지 않습니다. 다음 명령어를 실행하고 계층이 출력에 표시되는지 확인하세요.

bitbake -e | grep ^BBLAYERS=
    Copy to clipboard

계층을 찾을 수 없는 경우 `conf/bblayers.conf` 파일의 내용을 확인하여 계층이 여기에 포함되어 있는지 확인하세요.

# These layers hold recipe metadata not found in OE-core, but lack any machine or distro content
    BASELAYERS ?= " \
      ${WORKSPACE}/layers/meta-openembedded/meta-oe \
      ${WORKSPACE}/layers/meta-openembedded/meta-filesystems \
      ${WORKSPACE}/layers/meta-openembedded/meta-networking \
      ${WORKSPACE}/layers/meta-openembedded/meta-perl \
      ${WORKSPACE}/layers/meta-openembedded/meta-python \
      ${WORKSPACE}/layers/meta-openembedded/meta-gnome \
      ${WORKSPACE}/layers/poky/meta \
      ${WORKSPACE}/layers/poky/meta-poky \
      ${WORKSPACE}/layers/meta-security \
      ${WORKSPACE}/layers/meta-selinux \
      ${WORKSPACE}/layers/meta-virtualization \
    "
    
    # These layers hold machine specific content, aka Board Support Packages
    BSPLAYERS ?= " \
      ${WORKSPACE}/layers/meta-qcom-hwe \
      ${WORKSPACE}/layers/meta-qcom \
    "
    
    # Add your overlay location to EXTRALAYERS
    # Make sure to have a conf/layers.conf in there
    EXTRALAYERS ?= "${WORKSPACE}/layers/meta-qcom-extras"
    
    BBLAYERS = " \
      ${WORKSPACE}/layers/meta-qcom-distro \
      ${EXTRALAYERS} \
      ${BASELAYERS} \
      ${BSPLAYERS} \
    "
    Copy to clipboard

## QA 문제 확인: 뒤로 이동하는 버전

같은 작업 영역을 `base` 및 `custom` 빌드에 사용하는 경우 다음과 같은 서명이 보일 수 있습니다.

ERROR: <package>-<version> do_packagedata_setscene: QA Issue: Package
    version for package wpa-supplicant-src went backwards which would break
    package feeds (from 0:2.10.qcom-r0 to 0:2.10-r0) [version-going-backwards]
    Copy to clipboard

예시:

ERROR: wpa-supplicant-2.10-r0 do_packagedata_setscene: QA Issue: Package
    version for package wpa-supplicant-src went backwards which would break
    package feeds (from 0:2.10.qcom-r0 to 0:2.10-r0) [version-going-backwards]
    Copy to clipboard

이 품질 보증(QA) 문제는 `meta-qcom-hwe` 계층에 있는 레시피의 `custom` 변형에서 발생합니다. 예를 들어 `wpa_supplicant` 레시피에는 `2.10.qcom` 으로 설정된 버전이 있습니다. 이 버전에서 `.qcom` 은 레시피가 `poky/meta/recipes-connectivity` 의 레시피와 다른 소스 트리를 빌드한다는 것을 나타냅니다.

`custom` 변형을 빌드한 후 `base` 변형을 빌드하면 BitBake 빌드 시스템은 버전이 `wpa-supplicant_2.10` 에서 `wpa-supplicant-2.10.qcom` 으로 회귀하고 있음을 감지합니다. BitBake는 이러한 회귀를 패키지 피드 생성에 사용할 경우 문제가 발생할 수 있다는 점을 경고합니다.

이 QA 문제를 방지하거나 패키지 피드를 문제없이 설정하려면 다음 중 하나를 수행하세요.

- `base` 와 `custom` 빌드 변형에 대해 서로 다른 작업 영역을 생성합니다.
- 같은 작업 영역에서 다음과 같이 별도의 빌드 디렉토리를 생성합니다.

    | 빌드 변형 | 빌드 디렉토리를 생성하는 명령어 | 생성된 빌드 디렉토리 |
    | --- | --- | --- |
    | `base` | MACHINE=qcs9100-ride-sx DISTRO=qcom-wayland QCOM_SELECTED_BSP=base \<br>        source setup-environment build-qcom-wayland-base<br>        Copy to clipboard | `/<workspace>/Qualcomm_Linux/build-qcom-wayland-base/` |
    | `custom` | MACHINE=qcs9100-ride-sx DISTRO=qcom-wayland QCOM_SELECTED_BSP=custom \<br>        source setup-environment build-qcom-wayland-custom<br>        Copy to clipboard | `/<workspace>/Qualcomm_Linux/build-qcom-wayland-custom/` |

Last Published: Jul 30, 2025

[Previous Topic
사용자 지정 항목](https://docs.qualcomm.com/bundle/publicresource/80-70018-27KO/topics/user_customizations.md) [Next Topic
참조](https://docs.qualcomm.com/bundle/publicresource/80-70018-27KO/topics/references.md)