NXP-로고

IMXLXYOCTOUG
i.MX Yocto 프로젝트 사용자 가이드
LF6.6.3_1.0.0 — 29년 2024월 XNUMX일
NXP 반도체

사용자 가이드

IMXLXYOCTOUG i.MX Yocto 프로젝트

문서 정보

정보 콘텐츠
키워드 i.MX, 리눅스, LF6.6.3_1.0.0
추상적인 이 문서에서는 Yocto 프로젝트 빌드 환경을 사용하여 i.MX 보드용 이미지를 빌드하는 방법을 설명합니다. i.MX 릴리스 계층과 i.MX 관련 사용법을 설명합니다.

위에view

이 문서에서는 Yocto 프로젝트 빌드 환경을 사용하여 i.MX 보드용 이미지를 빌드하는 방법을 설명합니다. i.MX 릴리스 계층과 i.MX 관련 사용법을 설명합니다.
Yocto 프로젝트는 임베디드 Linux OS 개발에 초점을 맞춘 오픈 소스 협업입니다. Yocto 프로젝트에 대한 더 많은 정보는 Yocto 프로젝트 페이지를 참조하세요: www.yoctoproject.org/. Yocto 프로젝트 홈 페이지에는 시스템 사용 방법을 자세히 설명하는 여러 문서가 있습니다. i.MX 릴리스 레이어 없이 기본 Yocto 프로젝트를 사용하려면 다음 위치에 있는 Yocto 프로젝트 빠른 시작의 지침을 따르세요. https://docs.yoctoproject.org/brief-yoctoprojectqs/index.html.
FSL Yocto 프로젝트 커뮤니티 BSP(에서 찾을 수 있음) FSL 커뮤니티 BSP(freescale.github.io))는 Yocto 프로젝트 환경에서 i.MX 보드에 대한 지원을 제공하는 NXP 외부의 개발 커뮤니티입니다. i.MX는 Yocto 프로젝트 프레임워크 기반의 릴리스를 제공하는 Yocto 프로젝트 커뮤니티에 합류했습니다. FSL 커뮤니티 BSP 사용과 관련된 정보는 커뮤니티에서 확인할 수 있습니다. web 페이지. 이 문서는 커뮤니티 BSP 문서의 확장입니다.
File이미지를 만드는 데 사용되는 s는 레이어에 저장됩니다. 레이어에는 다양한 유형의 사용자 정의가 포함되어 있으며 다양한 소스에서 제공됩니다. 일부 file레이어의 s를 레시피라고 합니다. Yocto 프로젝트 레시피에는 소스 코드를 검색하고 컴포넌트를 빌드 및 패키징하는 메커니즘이 포함되어 있습니다. 다음 목록은 이 릴리스에 사용된 레이어를 보여줍니다.

i.MX 릴리스 레이어

  • 메타-imx
    – Meta-bsp: Meta-Freescale, Poky 및 Meta-OpenEmbedded 레이어에 대한 업데이트
    – Meta-sdk: Meta-freescale-distros 업데이트
    – Meta-ml: 머신러닝 레시피
    – Meta-v2x: i.MX 2DXL에만 사용되는 V8X 레시피
    – 메타 조종석: i.MX 8QuadMax용 조종석 레시피

Yocto 프로젝트 커뮤니티 레이어

  • Meta-Freescale: 베이스 및 i.MX Arm 참조 보드에 대한 지원을 제공합니다.
  • Meta-freescale-3rdparty: 타사 및 파트너 보드에 대한 지원을 제공합니다.
  • Meta-freescale-distro: 개발 및 실습 보드 기능을 지원하는 추가 항목입니다.
  • fsl-community-bsp-base: 종종 base로 이름이 변경됩니다. FSL 커뮤니티 BSP에 대한 기본 구성을 제공합니다.
  • Meta-openembedded: OE 코어 세계를 위한 레이어 모음입니다. 보다 layers.openembedded.org/.
  • poky: Poky의 기본 Yocto 프로젝트 항목입니다. 자세한 내용은 Poky README를 참조하세요.
  • 메타 브라우저: 여러 브라우저를 제공합니다.
  • Meta-qt6: Qt 6을 제공합니다.
  • Meta-timesys: BSP 취약성(CVE) 모니터링 및 알림을 위한 Vigiles 도구를 제공합니다.

이 문서의 커뮤니티 레이어에 대한 참조는 Meta-imx를 제외한 Yocto 프로젝트의 모든 레이어에 대한 것입니다. i.MX 보드는 Meta-imx 및 Meta-Freescale 레이어로 구성됩니다. 여기에는 U-Boot, Linux 커널 및 레퍼런스 보드 관련 세부 정보가 포함됩니다.
i.MX는 새로운 i.MX 릴리스를 FSL Yocto 프로젝트 커뮤니티 BSP와 통합하기 위해 i.MX BSP 릴리스(meta-imx)라는 추가 계층을 제공합니다. Meta-imx 레이어는 Yocto 프로젝트의 기존 Meta-freescale 및 Meta-freescale-distro 레이어에서 아직 사용할 수 없는 새 릴리스에 대한 업데이트되고 새로운 Yocto 프로젝트 레시피 및 기계 구성을 릴리스하는 것을 목표로 합니다. i.MX BSP의 내용
릴리스 계층은 레시피와 머신 구성입니다. 많은 테스트 사례에서 다른 레이어는 레시피를 구현하거나 다음을 포함합니다. files 및 i.MX 릴리스 계층은 현재 레시피에 추가하거나 구성 요소를 포함하고 패치 또는 소스 위치로 업데이트하여 레시피에 대한 업데이트를 제공합니다. 대부분의 i.MX 릴리스 계층 레시피는 커뮤니티에서 제공한 것을 사용하고 다른 계층에서는 사용할 수 없는 각각의 새 패키지 버전에 필요한 것을 업데이트하기 때문에 매우 작습니다.
i.MX BSP 릴리스 계층은 또한 시스템 이미지를 부팅하는 데 필요한 모든 구성 요소를 포함하는 이미지 레시피를 제공하므로 사용자가 더 쉽게 사용할 수 있습니다. 구성 요소는 개별적으로 또는 이미지에 필요한 모든 구성 요소를 하나의 빌드 프로세스로 가져오는 이미지 레시피를 통해 빌드할 수 있습니다.
i.MX 커널 및 U-Boot 릴리스는 i.MX 공개 Git 서버를 통해 액세스됩니다. 그러나 여러 구성 요소가 i.MX 미러에서 패키지로 릴리스됩니다. 패키지 기반 레시피 풀 fileGit 위치 대신 i.MX 미러에서 가져와 필요한 패키지를 생성합니다.
바이너리로 릴리스된 모든 패키지는 각 시스템 구성에 정의된 DEFAULTTUNE에 지정된 대로 하드웨어 부동 소수점을 사용하여 빌드됩니다. file. Jethro 릴리스부터는 소프트웨어 부동 소수점 패키지가 제공되지 않습니다.
릴리스 LF6.6.3_1.0.0은 Yocto 프로젝트 4.3(Nanbild)용으로 릴리스되었습니다. Yocto 프로젝트 4.3에 대한 동일한 레시피는 Yocto 프로젝트 릴리스의 다음 릴리스에서 업스트림되어 제공될 예정입니다. Yocto 프로젝트 릴리스 주기는 대략 XNUMX개월 동안 지속됩니다.
Meta-imx의 레시피와 패치는 커뮤니티 레이어로 업스트림됩니다. 특정 구성요소에 대한 작업이 완료된 후 fileMeta-imx의 s는 더 이상 필요하지 않으며 FSL Yocto 프로젝트 커뮤니티 BSP가 지원을 제공할 것입니다. 커뮤니티는 i.MX 참조 보드, 커뮤니티 보드 및 타사 보드를 지원합니다.

1.1 최종 사용자 라이센스 계약
NXP Yocto 프로젝트 BSP의 설정 환경 프로세스 중에 NXP 최종 사용자 라이센스 계약(EULA)이 표시됩니다. i.MX 독점 소프트웨어를 계속 사용하려면 사용자는 본 라이센스 조건에 동의해야 합니다. 조건에 동의하면 Yocto 프로젝트 빌드가 i.MX 미러에서 패키지를 untar할 수 있습니다.
메모:
일단 동의하면 i.MX Yocto 프로젝트 환경의 모든 추가 작업이 이 동의한 계약과 연결되므로 설정 프로세스 중에 이 라이센스 계약을 주의 깊게 읽으십시오.

1.2 참고문헌
i.MX에는 소프트웨어에서 지원되는 여러 제품군이 있습니다. 다음은 나열된 제품군과 제품군별 SoC입니다. i.MX Linux 릴리스 노트에서는 현재 릴리스에서 지원되는 SoC를 설명합니다. 이전에 출시된 일부 SoC는 현재 릴리스에서 구축 가능하지만 이전 검증 수준에 있는 경우 검증되지 않을 수 있습니다.

  • i.MX 6 제품군: 6QuadPlus, 6Quad, 6DualLite, 6SoloX, 6SLL, 6UltraLite, 6ULL, 6ULZ
  • i.MX 7 제품군: 7듀얼, 7ULP
  • i.MX 8 제품군: 8QuadMax, 8QuadPlus, 8ULP
  • i.MX 8M 제품군: 8M 플러스, 8M 쿼드, 8M 미니, 8M 나노
  • i.MX 8X 제품군: 8QuadXPlus, 8DXL
  • i.MX 9 제품군: i.MX 93, i.MX 95

이 릴리스에는 다음 참조 및 추가 정보가 포함되어 있습니다.

  • i.MX Linux 릴리스 노트(IMXLXRN) – 릴리스 정보를 제공합니다.
  • i.MX Linux 사용자 가이드(IMXLUG) – U-Boot 및 Linux OS 설치 및 i.MX 관련 기능 사용에 대한 정보를 제공합니다.
  • i.MX Yocto 프로젝트 사용자 가이드(IMXLXYOCTOUG) - Yocto 프로젝트를 사용하여 호스트를 설정하고, 도구 체인을 설치하고, 이미지를 생성하기 위한 소스 코드를 빌드하는 NXP 개발 시스템용 보드 지원 패키지에 대해 설명합니다.
  • i.MX 기계 학습 사용자 가이드(IMXMLUG) – 기계 학습 정보를 제공합니다.
  • i.MX Linux 참조 설명서(IMXLXRM) – i.MX용 Linux 드라이버에 대한 정보를 제공합니다.
  • i.MX 그래픽 사용자 가이드(IMXGRAPHICUG) – 그래픽 기능을 설명합니다.
  • i.MX 포팅 가이드(IMXXBSPPG) – BSP를 새 보드에 포팅하는 방법에 대한 지침을 제공합니다.
  • i.MX VPU 애플리케이션 프로그래밍 인터페이스 Linux 참조 설명서(IMXVPUAPI) – i.MX 6 VPU의 VPU API에 대한 참조 정보를 제공합니다.
  • Harpoon 사용자 가이드(IMXHPUG) – i.MX 8M 장치 제품군용 Harpoon 릴리스를 소개합니다.
  • i.MX 8QuadMax용 i.MX Digital Cockpit 하드웨어 파티셔닝 지원(IMXDCHPE) – i.MX 8QuadMax용 i.MX Digital Cockpit 하드웨어 솔루션을 제공합니다.
  • i.MX DSP 사용자 가이드(IMXDSPUG) – i.MX 8용 DSP에 대한 정보를 제공합니다.
  • i.MX 8M Plus 카메라 및 디스플레이 가이드(IMX8MPCDUG) – i.MX 8M Plus용 ISP 독립 센서 인터페이스 API에 대한 정보를 제공합니다.
  • EdgeLock Enclave 하드웨어 보안 모듈 API(RM00284) – 이 문서는 EdgeLock Enclave( ELE) 플랫폼.

빠른 시작 가이드에는 보드에 대한 기본 정보와 설정이 포함되어 있습니다. 그들은 NXP에 있습니다 web대지.

문서는 다음에서 온라인으로 사용할 수 있습니다. nxp.com.

특징

i.MX Yocto 프로젝트 릴리스 레이어에는 다음과 같은 기능이 있습니다.

  • 리눅스 커널 레시피
    – 커널 레시피는 recipe-kernel 폴더에 있으며 i.MX Git 서버에서 다운로드한 소스의 i.MX 커널을 통합합니다. 이는 프로젝트의 레시피에 의해 자동으로 수행됩니다.
    – LF6.6.3_1.0.0은 Yocto 프로젝트용으로 출시된 Linux 커널입니다.
  • U-부트 레시피
    – U-Boot 레시피는 recipe-bsp 폴더에 있으며 i.MX Git 서버에서 다운로드한 소스의 i.MX uboot-imx.git를 통합합니다.
    – i.MX 6.6.3, i.MX 1.0.0, i.MX 6, i.MX 7 및 i.MX 8 장치용 i.MX 릴리스 LF93_95은 업데이트된 v2023.04 i.MX U- 부팅 버전. 이 버전은 모든 i.MX 하드웨어에 대해 업데이트되지 않았습니다.
    – i.MX Yocto 프로젝트 커뮤니티 BSP는 메인라인의 u-boot-fslc를 사용하지만 이는 U-Boot 커뮤니티에서만 지원되며 L6.6.3 커널에서는 지원되지 않습니다.
    – i.MX Yocto 프로젝트 커뮤니티 BSP는 U-Boot 버전을 자주 업데이트하므로 새로운 U-Boot 버전이 메타 프리스케일 레이어에 통합되고 i.MX uboot-imx 릴리스의 업데이트가 메인라인.
  • 그래픽 레시피
    – 그래픽 레시피는 recipe-graphics 폴더에 있습니다.
    – 그래픽 레시피는 i.MX 그래픽 패키지 릴리스를 통합합니다. GPU가 있는 i.MX 보드의 경우 imx-gpu-viv 레시피는 프레임 버퍼(FB), XWayland, Wayland 백엔드 및 Weston 컴포지터(Weston)와 같은 각 DISTRO의 그래픽 구성 요소를 패키지합니다. i.MX 6 및 i.MX 7만 프레임 버퍼를 지원합니다.
    – Xorg-driver는 xserver-xorg를 통합합니다.
  • i.MX 패키지 레시피 펌웨어-imx, imx-sc-fimrware 및 기타 패키지는 recipe-bsp에 있으며 i.MX 미러에서 가져와서 이미지 레시피로 빌드하고 패키징합니다.
  • 멀티미디어 레시피
    – 멀티미디어 레시피는 recipe-multimedia에 있습니다.
    – imx-codec 및 imx-parser와 같은 독점 패키지에는 i.MX 미러에서 레시피를 가져와서 이미지 레시피로 빌드하고 패키징하는 기능이 있습니다.
    – 오픈소스 패키지에는 GitHub의 공개 Git Repos에서 가져오는 레시피가 있습니다.
    – 제한된 코덱에 대해서는 일부 레시피가 제공됩니다. 이에 대한 패키지는 i.MX 미러에 없습니다.
    이 패키지는 별도로 제공됩니다. 이를 얻으려면 i.MX 마케팅 담당자에게 문의하세요.
  • 핵심 레시피
    udev와 같은 일부 규칙 레시피는 시스템에 배포할 업데이트된 i.MX 규칙을 제공합니다. 이러한 레시피는 일반적으로 정책 업데이트이며 사용자 정의에만 사용됩니다. 릴리스는 필요한 경우에만 업데이트를 제공합니다.
  • 데모 레시피
    데모 레시피는 Meta-sdk 디렉터리에 있습니다. 이 레이어에는 이미지 레시피와 터치 보정과 같은 사용자 정의를 위한 레시피 또는 데모 애플리케이션용 레시피가 포함되어 있습니다.
  • 머신러닝 레시피
    기계 학습 레시피는 Meta-ml 디렉터리에 있습니다. 이 레이어에는 tensorflow-lite, onnx 등과 같은 패키지에 대한 기계 학습 레시피가 포함되어 있습니다.
  • 조종석 레시피
    Cockpit 레시피는 Meta-Cockpit에 상주하며 imx-8qmcockpit-mek 시스템 구성을 사용하여 i.MX 8QuadMax에서 지원됩니다.
    Meta-nxp-demo-experience 레이어에는 더 많은 데모와 도구 레시피가 포함되어 있습니다. 이 레이어는 공개된 모든 전체 이미지에 포함되어 있습니다.

호스트 설정

Linux 호스트 시스템에서 Yocto 프로젝트 예상 동작을 얻으려면 아래 설명된 패키지와 유틸리티를 설치해야 합니다. 중요한 고려 사항은 호스트 시스템에 필요한 하드 디스크 공간입니다. 예를 들어amp즉, Ubuntu를 실행하는 머신에서 빌드할 때 필요한 최소 하드 디스크 공간은 약 50GB입니다. 모든 백엔드를 함께 컴파일하기에 충분한 최소 120GB를 제공하는 것이 좋습니다. 기계 학습 구성 요소를 구축하려면 최소 250GB가 권장됩니다.

권장되는 최소 Ubuntu 버전은 20.04 이상입니다. 최신 릴리스는 Chromium v91을 지원하므로 ulimit(열린 횟수)를 늘려야 합니다. files) ~ 4098.

3.1 도커
i.MX는 이제 Docker 설정 스크립트를 출시합니다. GitHub – nxp-imx/imx-docker: i.MX 도커. Docker를 사용하여 호스트 빌드 시스템을 설정하려면 추가 정보의 지침을 따르세요.
또한 온보드 도커는 i.MX 8에만 메타 가상화 계층을 포함하여 표준 매니페스트로 활성화됩니다. 이는 외부 Docker 허브에서 Docker 컨테이너를 설치하기 위한 헤드리스 시스템을 생성합니다.

3.2 호스트 패키지
Yocto 프로젝트 빌드에는 Yocto 프로젝트 아래 문서화된 빌드를 위해 특정 패키지를 설치해야 합니다. 이동 Yocto 프로젝트 빠른 시작 빌드 머신에 설치해야 하는 패키지를 확인하세요.
필수 Yocto 프로젝트 호스트 패키지는 다음과 같습니다:
$ sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential \chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils \iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \python3- 하위 유닛 mesa-common-dev zstd liblz4-tool file 로케일 -y
$ sudo locale-gen en_US.UTF-8

구성 도구는 빌드 시스템에 있는 기본 grep 버전을 사용합니다. 경로에 다른 버전의 grep이 있으면 빌드가 실패할 수 있습니다. 한 가지 해결 방법은 특수 버전의 이름을 "grep"이 포함되지 않은 이름으로 바꾸는 것입니다.

3.3 Repo 유틸리티 설정
Repo는 동일한 서버에 있을 필요가 없는 여러 리포지토리가 포함된 프로젝트를 더 쉽게 관리할 수 있도록 Git 위에 구축된 도구입니다. Repo는 Yocto 프로젝트의 계층화된 특성을 매우 잘 보완하여 사용자가 BSP에 자신의 레이어를 추가하는 것을 더 쉽게 만듭니다.

"repo" 유틸리티를 설치하려면 다음 단계를 수행하십시오.

  1. 홈 디렉터리에 bin 폴더를 만듭니다.
    $ mkdir ~/bin(bin 폴더가 이미 존재하는 경우 이 단계가 필요하지 않을 수 있음)
    $curl https://storage.googleapis.com/git-repo-downloads/repo>~/bin/repo
    $ chmod a+x ~/bin/repo
  2. .bashrc에 다음 줄을 추가합니다. file ~/bin 폴더가 PATH 변수에 있는지 확인하세요.
    내보내기 PATH=~/bin:$PATH

Yocto 프로젝트 설정

먼저 아래 명령을 사용하여 Git이 올바르게 설정되었는지 확인하세요.
$ git config –global user.name "당신의 이름"
$ git config –global user.email “귀하의 이메일”
$ 자식 구성 – 목록

i.MX Yocto 프로젝트 BSP 릴리스 디렉터리에는 하나 이상의 빌드 디렉터리를 구축하는 데 사용되는 레시피와 환경을 설정하는 데 사용되는 스크립트 세트가 포함된 소스 디렉터리가 포함되어 있습니다.
프로젝트를 빌드하는 데 사용되는 레시피는 커뮤니티와 i.MX 모두에서 제공됩니다. Yocto 프로젝트 레이어는 소스 디렉토리에 다운로드됩니다. 프로젝트를 빌드하는 데 사용되는 레시피를 설정합니다.
다음 예amp파일은 i.MX Yocto 프로젝트 커뮤니티 BSP 레시피 레이어를 다운로드하는 방법을 보여줍니다. 이 전의 경우amp파일을 실행하면 해당 프로젝트에 대해 imx-yocto-bsp라는 디렉터리가 생성됩니다. 이 대신 어떤 이름이라도 사용할 수 있습니다.
$ mkdir imx-yocto-bsp
$ cd imx-yocto-bsp
$ 저장소 초기화 -u https://github.com/nxp-imx/imx-manifest
-b imx-linux-nanbild -m imx-6.6.3-1.0.0.xml
$ 저장소 동기화

메모:
https://github.com/nxp-imx/imx-manifest/tree/imx-linux-nanbield 모든 매니페스트 목록이 있습니다 file이번 릴리스에서는 지원됩니다.
이 프로세스가 완료되면 소스 코드가 imx-yocto-bsp/sources 디렉터리로 체크아웃됩니다.
repo sync 명령을 사용하여 주기적으로 Repo 동기화를 수행하여 최신 코드로 업데이트할 수 있습니다.
Repo 초기화 중에 오류가 발생하면 .repo 디렉터리를 삭제하고 Repo 초기화 명령을 다시 실행해 보세요.
repo init는 해당 라인의 최신 패치에 대해 구성됩니다. 색인의 지침을 따르십시오. imx-manifest.git 원래 GA를 검색합니다. 그렇지 않으면 GA plus 패치가 기본적으로 선택됩니다. zeus base에서 이전 릴리스를 선택하려면 Repo 초기화 줄 끝에 -m(릴리스 매니페스트 이름)을 추가하면 이전 릴리스가 검색됩니다. 전amp파일은 README에 제공됩니다. file 위에 제공된 링크에서.

이미지 빌드

이 섹션에서는 이미지 구축 프로세스와 함께 자세한 정보를 제공합니다.

5.1 빌드 구성
i.MX는 i.MX 시스템 설정을 단순화하는 imx-setup-release.sh 스크립트를 제공합니다. 스크립트를 사용하려면 빌드할 특정 머신의 이름과 원하는 그래픽 백엔드를 지정해야 합니다.
스크립트는 디렉터리와 구성을 설정합니다. file지정된 머신 및 백엔드에 대한 것입니다.
Meta-imx 계층에서 i.MX는 Metafreescale 기계 구성을 오버레이하는 새롭거나 업데이트된 기계 구성을 제공합니다. 이것들 files는 imx-setup-release.sh 스크립트에 의해 Meta-freescale/conf/machine 디렉토리에 복사됩니다. 다음은 i.MX 시스템 구성입니다. file선택할 수 있는 것입니다. 최신 추가 사항은 릴리스 노트나 컴퓨터 디렉토리를 확인하세요.

아이엠엑스 6 아이엠엑스 7 아이엠엑스 8 아이엠엑스 9
• imx6qpsabresd
• imx6ulevk
• imx6ulz-14x14evk
• imx6ull14x14evk
• imx6ull9x9evk
• imx6dlsabresd
• imx6qsabresd
• imx6solosabresd
• imx6sxsabresd
• imx6sllevk
• imx7dsabresd
• imx7ulpevk
• imx8qmmek
• imx8qxpc0mek
• imx8mqevk
• imx8mm-lpddr4-evk
• imx8mm-ddr4-evk
• imx8mn-lpddr4-evk
• imx8mn-ddr4-evk
• imx8mp-lpddr4-evk
• imx8mp-ddr4-evk
• imx8dxla1-lpddr4-evk
• imx8dxlb0-lpddr4-evk
• imx8dxlb0-ddr3l-evk
• imx8mnddr3levk
• imx8ulp-lpddr4-evk
• imx8ulp-9×9-lpddr4evk
• imx93evk
• imx93-11x11lpddr4x-evk
• imx93-9×9-lpddr4qsb
• imx93-14x14lpddr4x-evk

각 빌드 폴더는 하나의 배포판만 사용하도록 구성되어야 합니다. DISTRO_FEATURES 변수가 변경될 때마다 깨끗한 빌드 폴더가 필요합니다. 각 그래픽 백엔드 프레임 버퍼, Wayland 및 XWayland에는 각각 distro 구성이 있습니다. DISTRO가 없는 경우 file 지정되면 XWayland 배포판이 기본값으로 설정됩니다. Distro 구성은 local.conf에 저장됩니다. file DISTRO 설정에 있으며 bitbake가 실행 중일 때 표시됩니다. 이전 릴리스에서는 layer.conf에서 poky distro와 사용자 정의 버전 및 공급자를 사용했지만 사용자 정의 distro가 더 나은 솔루션입니다. 기본 poky 배포판을 사용하는 경우 기본 커뮤니티 구성이 사용됩니다. i.MX 릴리스로서 우리는 NXP가 지원하고 테스트해 온 일련의 구성을 선호합니다.
다음은 DISTRO 구성 목록입니다. fsl-imx-fb는 i.MX 8에서 지원되지 않으며 fsl-imxx11은 더 이상 지원되지 않습니다.

  • fsl-imx-wayland: 순수 Wayland 그래픽.
  • fsl-imx-xwayland: Wayland 그래픽 및 X11. EGL을 사용하는 X11 애플리케이션은 지원되지 않습니다.
  • fsl-imx-fb: 프레임 버퍼 그래픽 - X11 또는 Wayland가 없습니다. i.MX 8 및 i.MX 9에서는 프레임 버퍼가 지원되지 않습니다.

사용자는 자신만의 배포판을 만들 수 있습니다. file 선호하는 버전과 공급자를 설정하기 위해 local.conf를 업데이트하지 않고 환경을 사용자 정의하려면 이들 중 하나를 기반으로 합니다.
imx-setup-release.sh 스크립트의 구문은 다음과 같습니다.
$ 디스트로= 기계= 소스 imx-setup-release.sh -b

디스트로= 빌드 환경을 구성하는 distro이며, Meta-imx/meta-sdk/conf/distro에 저장되어 있습니다.
기계= 구성을 가리키는 컴퓨터 이름입니다. file Meta-Freescale 및 Meta-imx의 conf/machine에서.
-비 imx-setup-release.sh 스크립트로 생성된 빌드 디렉터리의 이름을 지정합니다.
스크립트가 실행되면 사용자에게 EULA에 동의하라는 메시지가 표시됩니다. EULA가 승인되면 승인은 각 빌드 폴더 내의 local.conf에 저장되며 해당 빌드 폴더에 대한 EULA 승인 쿼리는 더 이상 표시되지 않습니다.
스크립트가 실행된 후 작업 디렉터리는 -b 옵션으로 지정된 스크립트에 의해 방금 생성된 디렉터리입니다. 다음을 포함하는 conf 폴더가 생성됩니다. filebblayers.conf 및 local.conf.
그만큼 /conf/bblayers.conf file i.MX Yocto 프로젝트 릴리스에 사용된 모든 메타레이어가 포함되어 있습니다.
local.conf file 머신 및 배포판 사양이 포함되어 있습니다.

기계 ??= 'imx7ulpevk'
DISTRO ?= 'fsl-imx-xwayland'
ACCEPT_FSL_EULA = “1”

MACHINE 구성은 이것을 편집하여 변경할 수 있습니다. file, 필요한 경우.
local.conf의 ACCEPT_FSL_EULA file 이는 귀하가 EULA 조건을 수락했음을 나타냅니다.
Meta-imx 계층에서는 i.MX 6 및 i.MX 6 시스템에 대한 통합 시스템 구성(imx7qpdlsolox.conf 및 imx6ul7d.conf)이 제공됩니다. i.MX는 이를 사용하여 테스트를 위해 하나의 이미지에 모든 장치 트리가 포함된 공통 이미지를 구축합니다. 테스트 이외의 용도로 이 기계를 사용하지 마십시오.

5.2 i.MX Yocto 프로젝트 이미지 선택
Yocto 프로젝트는 다양한 레이어에서 사용할 수 있는 일부 이미지를 제공합니다. Poky는 일부 이미지를 제공하고, Meta-freescale 및 Meta-freescale-distro는 다른 이미지를 제공하며, 추가 이미지 레시피는 Meta-imx 레이어에서 제공됩니다. 다음 표에는 다양한 주요 이미지, 해당 콘텐츠, 이미지 레시피를 제공하는 레이어가 나열되어 있습니다.

표 1. i.MX Yocto 프로젝트 이미지

이미지 이름 목표 레이어별로 제공
코어-이미지-최소 장치 부팅만 허용하는 작은 이미지입니다. 비좁은
코어 이미지 기반 대상 장치 하드웨어를 완벽하게 지원하는 콘솔 전용 이미지입니다. 비좁은
코어 이미지 사토 모바일 환경과 모바일 디바이스를 위한 시각적 스타일인 Sato가 포함된 이미지입니다. 이미지는 Sato 테마를 지원하고 Pimlico 애플리케이션을 사용합니다. 여기에는 터미널, 편집기 및 file 관리자. 비좁은
imx-이미지-코어 Wayland 백엔드에 사용할 i.MX 테스트 애플리케이션이 포함된 i.MX 이미지. 이 이미지는 일일 핵심 테스트에 사용됩니다. 메타-imx/메타-sdk
fsl-이미지-머신-테스트 콘솔 환경을 갖춘 FSL 커뮤니티 i.MX 코어 이미지 – GUI 인터페이스 없음. 메타 프리스케일 배포판
imx-이미지-멀티미디어 Qt 콘텐츠 없이 GUI를 사용하여 i.MX 이미지를 빌드합니다. 메타-imx/메타-sdk
imx-이미지-가득함 기계 학습 기능을 사용하여 오픈소스 Qt 6 이미지를 구축합니다. 이러한 이미지는 하드웨어 그래픽이 포함된 i.MX SoC에서만 지원됩니다. i.MX 6UltraLite, i.MX 6UltraLiteLite, i.MX 6SLL, [MX 7Dual, i.MX 8MNanoLite 또는 i.MX 8DXL에서는 지원되지 않습니다. 메타-imx/메타-sdk

5.3 이미지 구축
Yocto 프로젝트 빌드는 bitbake 명령을 사용합니다. 예를 들어amp르, 비트베이크 명명된 구성 요소를 빌드합니다. 각 구성 요소 빌드에는 가져오기, 구성, 컴파일, 패키징 및 대상 rootfs에 배포와 같은 여러 작업이 있습니다. bitbake 이미지 빌드는 이미지에 필요한 모든 구성 요소를 수집하고 작업별 종속성 순서대로 빌드합니다. 첫 번째 빌드는 구성 요소를 빌드하는 데 필요한 도구와 함께 도구 체인입니다.
다음 명령은 ex입니다.amp이미지를 만드는 방법에 대한 파일:
$ bitbake imx-이미지-멀티미디어

5.4 비트베이크 옵션
이미지를 빌드하는 데 사용되는 bitbake 명령은 bitbake입니다. . 아래에 설명된 특정 활동에 추가 매개변수를 사용할 수 있습니다. Bitbake는 단일 구성 요소를 개발하는 데 유용한 다양하고 유용한 옵션을 제공합니다. BitBake 매개변수를 사용하여 실행하려면 명령은 다음과 같습니다. 원하는 빌드 패키지입니다.
다음 표에는 몇 가지 BitBake 옵션이 나와 있습니다.

표 2. BitBake 옵션

비트베이크 매개변수 설명
-c 가져오기 다운로드 상태가 완료로 표시되지 않은 경우 가져옵니다.
-c 정리 전체 구성 요소 빌드 디렉터리를 정리합니다. 빌드 디렉터리의 모든 변경 사항이 손실됩니다. rootfs 및 구성 요소의 상태도 지워집니다. 구성 요소는 다운로드 디렉터리에서도 제거됩니다.
-c 배포 이미지 또는 구성 요소를 rootfs에 배포합니다.
-k 빌드 중단이 발생하더라도 구성 요소를 계속 빌드합니다.
-c 컴파일 -f 임시 디렉토리 아래의 소스 코드를 직접 변경하는 것은 권장되지 않지만, 만약 그렇다면 이 옵션을 사용하지 않으면 Yocto 프로젝트가 이를 다시 빌드하지 않을 수 있습니다. 이미지가 배포된 후 강제로 다시 컴파일하려면 이 옵션을 사용합니다.
-g 이미지 또는 구성 요소에 대한 종속성 트리를 나열합니다.
-DDD 디버그 3레벨 깊이를 켭니다. 각 D는 또 다른 수준의 디버그를 추가합니다.
-s, –쇼-버전 모든 레시피의 현재 버전과 기본 버전을 표시합니다.

5.5 U-Boot 구성
U-Boot 구성은 기본 시스템 구성에 정의되어 있습니다. file. 구성은 UBOOT_CONFIG 설정을 사용하여 지정됩니다. 이를 위해서는 local.conf에서 UBOOT_CONFIG를 설정해야 합니다. 그렇지 않으면 U-Boot 빌드는 기본적으로 SD 부팅을 사용합니다.
이는 다음 명령을 사용하여 별도로 빌드할 수 있습니다(MACHINE을 올바른 대상으로 변경).
U-Boot 구성 사이에 공백을 넣어 하나의 명령으로 여러 U-Boot 구성을 작성할 수 있습니다.
다음은 각 보드의 U-Boot 구성입니다. i.MX 6 및 i.MX 7 보드는 OPTEE가 없고 OP-TEE가 있는 SD를 지원합니다.

  • uboot_config_imx93evk=”sd fspi”
  • uboot_config_imx8mpevk=”sd fspi ecc”
  • uboot_config_imx8mnevk=”sd fspi”
  • uboot_config_imx8mmevk=”sd fspi”
  • uboot_config_imx8mqevk=”sd”
  • uboot_config_imx8dxlevk=”sd fspi”
  • uboot_conifg_imx8dxmek=”sd fspi”
  • uboot_config_imx8qxpc0mek=”sd fspi”
  • uboot_config_imx8qxpmek=”sd fspi”
  • uboot_config_imx8qmmek=”sd fspi”
  • uboot_config_imx8ulpevk=”sd fspi”
  • uboot_config_imx8ulp-9×9-lpddr4-evk=”sd fspi”
  • uboot_config_imx6qsabresd=”sd sata sd-optee”
  • uboot_config_imx6qsabreauto=”sd sata eimnor spinor nand sd-optee”
  • uboot_config_imx6dlsabresd=”sd epdc sd-optee”
  • uboot_config_imx6dlsabreauto=”sd eimnor spinor nand sd-optee”
  • uboot_config_imx6solosabresd=”sd sd-optee”
  • uboot_config_imx6solosabreauto=”sd eimnor spinor nand sd-optee”
  • uboot_config_imx6sxsabresd=”sd emmc qspi2 m4fastup sd-optee”
  • uboot_config_imx6sxsabreauto=”sd qspi1 nand sd-optee”
  • uboot_config_imx6qpsabreauto=”sd sata eimnor spinor nand sd-optee”
  • uboot_config_imx6qpsabresd=”sd sata sd-optee”
  • uboot_config_imx6sllevk=”sd epdc sd-optee”
  • uboot_config_imx6ulevk=”sd emmc qspi1 sd-optee”
  • uboot_config_imx6ul9x9evk=”sd qspi1 sd-optee”
  • uboot_config_imx6ull14x14evk=”sd emmc qspi1 nand sd-optee”
  • uboot_config_imx6ull9x9evk=”sd qspi1 sd-optee”
  • uboot_config_imx6ulz14x14evk=”sd emmc qspi1 nand sd-optee”
  • uboot_config_imx7dsabresd=”sd epdc qspi1 nand sd-optee”
  • uboot_config_imx7ulpevk=”sd emmc sd-optee”

U-Boot 구성으로 빌드하려면 다음 단계를 수행하십시오.
단 하나의 U-Boot 구성으로:
$ echo "UBOOT_CONFIG = \"eimnor\"" >> conf/local.conf
여러 U-Boot 구성 사용:
$ echo "UBOOT_CONFIG = \"sd eimnor\"" >> conf/local.conf
$ 기계= bitbake -c u-boot-imx 배포
메모: i.MX 8은 U-Boot를 가져오는 imx-boot를 사용합니다.

5.6 빌드 시나리오
다음은 다양한 구성에 대한 빌드 설정 시나리오입니다.
매니페스트를 설정하고 다음 명령으로 Yocto 프로젝트 레이어 소스를 채웁니다:
$ mkdir imx-yocto-bsp
$ cd imx-yocto-bsp
$ 저장소 초기화 -u https://github.com/nxp-imx/imx-manifest
-b imx-linux-nanbild -m imx-6.6.3-1.0.0.xml
$ 저장소 동기화
다음 섹션에서는 몇 가지 구체적인 예를 제공합니다.amp레. 명령을 맞춤설정하기 위해 지정된 머신 이름과 백엔드를 바꿉니다.

5.6.1 i.MX 6QuadPlus SABRE-AI의 프레임 버퍼 이미지
$ DISTRO=fsl-imx-fb MACHINE=imx6qpsabreauto 소스 imx-setup-release.sh –b build-fb
$ bitbake imx-이미지-멀티미디어
이는 프레임 버퍼 백엔드로 멀티미디어 이미지를 구축합니다.

5.6.2 i.MX 8QuadXPlus MEK의 XWayland 이미지
$ DISTRO=fsl-imx-xwayland MACHINE=imx8qxpmek 소스 imx-setup-release.sh -b build-xwayland
$ bitbake imx-이미지-전체
이는 Qt 6 및 기계 학습 기능을 사용하여 XWayland 이미지를 구축합니다. Qt 6 및 기계 학습 없이 빌드하려면 대신 imx-image-multimedia를 사용하십시오.

5.6.3 i.MX 8M Quad EVK의 Wayland 이미지
$ DISTRO=fsl-imx-wayland MACHINE=imx8mqevk 소스 imx-setup-release.sh -b buildwayland
$ bitbake imx-이미지-멀티미디어
이는 Qt 6 없이 멀티미디어가 포함된 Weston Wayland 이미지를 구축합니다.

5.6.4 빌드 환경 다시 시작
빌드 디렉터리가 설정된 후 새 터미널 창이 열리거나 머신이 재부팅되면 설정 환경 스크립트를 사용하여 환경 변수를 설정하고 빌드를 다시 실행해야 합니다. 전체 imxsetup-release.sh는 필요하지 않습니다.
$ 소스 설정 환경

5.6.5 XWayland 및 Wayland의 Chromium 브라우저
Yocto 프로젝트 커뮤니티에는 GPU 하드웨어가 포함된 i.MX SoC용 Wayland 버전 Chromium 브라우저에 대한 Chromium 레시피가 있습니다. NXP는 커뮤니티의 패치를 지원하거나 테스트하지 않습니다. 이 섹션에서는 Chromium을 rootfs에 통합하고 하드웨어 가속 렌더링을 활성화하는 방법을 설명합니다. WebGL. Chromium 브라우저에는 imx-release-setup.sh 스크립트에 자동으로 추가된 메타 브라우저와 같은 추가 계층이 필요합니다.
XWayland 또는 Wayland의 local.conf에서 이미지에 Chromium을 추가합니다. X11은 지원되지 않습니다.
CORE_IMAGE_EXTRA_INSTALL += "크롬-오존-웨이랜드"

5.6.6 Qt 6과 QtWeb엔진 브라우저
Qt 6에는 상업용 라이센스와 오픈 소스 라이센스가 모두 있습니다. Yocto 프로젝트에서 빌드할 때 오픈 소스 라이선스가 기본값입니다. 이러한 라이센스 간의 차이점을 이해하고 적절하게 선택하십시오. 오픈소스 라이선스에서 사용자 정의 Qt 6 개발이 시작된 후에는 상용 라이선스와 함께 사용할 수 없습니다. 법적 대리인과 협력하여 이러한 라이센스 간의 차이점을 이해하십시오.
메모:
Qt 구축Web엔진은 릴리스에서 사용되는 메타 크롬 레이어와 호환되지 않습니다.
NXP 빌드 설정을 사용하는 경우 bblayers.conf에서 메타 크롬을 제거하십시오.
# qt와의 비호환으로 인해 주석 처리됨web엔진
#BBLAYERS += "${BSPDIR}/sources/meta-browser/meta-chromium"

6개의 Qt XNUMX 브라우저를 사용할 수 있습니다. QtWeb엔진 브라우저는 다음에서 찾을 수 있습니다:

  • /usr/share/qt6/examp레/web엔진 위젯/StyleSheetbrowser
  • /usr/share/qt6/examp레/web엔진위젯/Simplebrowser
  • /usr/share/qt6/examp레/web엔진위젯/쿠키브라우저
  • /usr/share/qt6/examp레/web엔진/퀵나노브라우저

위의 디렉터리로 이동하여 거기에 있는 실행 파일을 실행하면 세 가지 브라우저를 모두 실행할 수 있습니다.
-plugin evdevtouch:/dev/input/event0 매개변수를 실행 파일에 추가하여 터치스크린을 활성화할 수 있습니다.
./quicknanobrowser -plugin evdevtouch:/dev/input/event0
QtWeb엔진은 i.MX 6, i.MX 7, i.MX 8 및 i.MX 9의 GPU 그래픽 하드웨어가 있는 SoC에서만 작동합니다.
Qt를 포함하려면web엔진을 이미지에 추가하려면 local.conf 또는 이미지 레시피에 다음을 입력하세요.
IMAGE_INSTALL:추가 = ” 패키지 그룹-qt6-web엔진"

5.6.7 NXP eIQ 기계 학습
Meta-ml 계층은 이전에 별도의 Meta-imx-machinelearning 계층으로 출시되었지만 이제는 표준 BSP 이미지(imx-image-full)에 통합된 NXP eIQ 기계 학습의 통합입니다.
많은 기능에는 Qt 6이 필요합니다. imx-image-full 이외의 다른 구성을 사용하는 경우 local.conf에 다음을 입력합니다.
IMAGE_INSTALL:append = "패키지 그룹-imx-ml"
NXP eIQ 패키지를 SDK에 설치하려면 local.conf에 다음을 입력합니다.
TOOLCHAIN_TARGET_TASK:append = “tensorflow-lite-dev onnxruntime-dev”

메모:
TOOLCHAIN_TARGET_TASK_append 변수는 이미지가 아닌 SDK에만 패키지를 설치합니다.
OpenCV DNN 데모에 대한 모델 구성 및 입력 데이터를 추가하려면 local.conf에 다음을 입력하십시오.
PACKAGECONFIG:append:pn-opencv_mx8 = ” 테스트 테스트-imx”

5.6.8 시스템d
Systemd는 기본 초기화 관리자로 활성화됩니다. systemd를 기본값으로 비활성화하려면 fsl-imxpreferred-env.inc로 이동하여 systemd 섹션을 주석 처리하세요.

5.6.9 Multilib 활성화
i.MX 8의 경우 multilib 구성을 사용하여 32비트 OS에서 64비트 애플리케이션 구축을 지원할 수 있습니다. Multilib는 다양한 대상 최적화 또는 아키텍처 형식으로 라이브러리를 구축하고 이를 하나의 시스템 이미지로 결합하는 기능을 제공합니다. Multilib는 MULTILIB, DEFAULTTUNE 및 IMAGE_INSTALL 선언을 local.conf에 추가하여 활성화됩니다. file. Multilib는 데비안 패키지 관리에서 지원되지 않습니다. RPM 시스템이 필요합니다. 기본 RPM으로 이동하려면 local.conf의 두 패키지 관리 줄을 주석 처리하세요.
MULTILIBS 선언은 일반적으로 lib32 또는 lib64이며 다음 위치에 정의되어야 합니다.
MULTILIB_GLOBAL_VARIANTS 변수는 다음과 같습니다.

MULTILIBS = “multilib:lib32”
DEFAULTTUNE은 다음과 같이 이 대체 라이브러리 유형에 대한 AVAILTUNES 값 중 하나여야 합니다.
DEFAULTTUNE:virtclass-multilib-lib32 = "armv7athf-neon"
IMAGE_INSTALL은 다음과 같이 특정 애플리케이션에 필요한 32비트 라이브러리인 이미지에 추가됩니다.
IMAGE_INSTALL:추가 = “lib32-bash”
i.MX 8의 경우 32비트 애플리케이션 지원을 구축하려면 local.conf에 다음 명령문이 필요합니다. 이 구성은 64비트 시스템을 기본 시스템 유형으로 지정하고 multilib:lib32를 추가합니다. 여기서 해당 라이브러리는 armv7athf-neon tune으로 컴파일된 다음 모든 이미지에 lib32 패키지를 포함합니다.
머신 = imx8mqevk
# multilib 대상 정의
conf/multilib.conf가 필요합니다
MULTILIBS = “multilib:lib32”
DEFAULTTUNE:virtclass-multilib-lib32 = "armv7athf-neon"
# 이미지에 multilib 패키지를 추가합니다.
IMAGE_INSTALL:append = “lib32-glibc lib32-libgcc lib32-libstdc++”
처리 오류를 방지하려면 deb 패키징을 비활성화하세요. local.conf를 확인하고 다음 사항이 있으면 댓글을 달아주세요.
PACKAGE_CLASSES = "패키지_deb"
EXTRA_IMAGE_FEATURES += “패키지 관리”

5.6.10 OP-TEE 활성화
OP-TEE에는 OP-TEE OS, OP-TEE 클라이언트, OP-TEE 테스트의 세 가지 구성 요소가 필요합니다. 또한 커널과 U-Boot에는 구성이 있습니다. OP-TEE OS는 부트로더에 상주하고 OP-TEE 클라이언트와 테스트는 rootfs에 상주합니다.
이번 릴리스에서는 OP-TEE가 기본적으로 활성화되어 있습니다. OP-TEE를 비활성화하려면 Meta-imx/meta-bsp/conf/layer.conf로 이동하십시오. file OP-TEE에 대한 DISTRO_FEATURES_append를 주석 처리하고 제거된 줄의 주석 처리를 제거합니다.

5.6.11 감옥 건설
Jailhouse는 Linux OS 기반의 정적 파티셔닝 하이퍼바이저입니다. i.MX 8M Plus, i.MX 8M Nano, i.MX 8M Quad EVK 및 i.MX 8M Mini EVK 보드에서 지원됩니다.

Jailhouse 빌드를 활성화하려면 local.conf에 다음 줄을 추가하세요.
DISTRO_FEATURES:append = “감옥”
U-Boot에서 jh_netboot 또는 jh_mmcboot를 실행하세요. Jailhouse 사용을 위한 전용 DTB를 로드합니다. i.MX 8M Quad를 예로 들었습니다.amp파일, Linux OS가 부팅된 후:
#insmodjailhouse.ko
#./jailhouse는 imx8mq.cell을 활성화합니다.

i.MX 8의 Jailhouse에 대한 자세한 내용은 i.MX Linux 사용자 가이드(IMXLUG)를 참조하세요.

5.6.12 패키지 관리
Yocto 프로젝트의 기본 패키지 관리는 rpm입니다. i.MX 배포판은 이제 패키지 관리로 데비안을 활성화합니다. 이는 local.conf의 package_rpm에 ACKAGE_CLASSES 설정을 추가하거나 데비안 패키지 피드 PACKAGE_CLASSES = “package_deb” 없이 사용자 정의 배포판을 생성하여 쉽게 끌 수 있습니다.
데비안 패키지 피드를 추가하면 데비안 패키지 피드에 연결되는 /etc/apt에 source.list를 추가할 수 있습니다. 이를 통해 사용자는 Yocto 이미지에 추가하지 않고도 이미지에 제공되지 않은 패키지를 설치할 수 있습니다. 이 패키지 피드는 i.MX Yocto 빌드 프로세스에 의해 생성되지 않기 때문에 각 패키지가 올바른 종속성과 함께 작동한다는 보장은 없지만 더 간단한 도구를 제공할 수 있습니다.
복잡하고 특정 버전에 대한 종속성이 더 높은 소프트웨어는 외부 패키지 피드에 문제가 있을 수 있습니다.

이미지 배포

완벽한 file시스템 이미지는 다음에 배포됩니다. /tmp/배포/이미지. 이미지는 대부분 환경 설정에 설정된 머신에만 적용됩니다. 각 이미지 빌드는 머신 구성에 정의된 IMAGE_FSTYPES를 기반으로 U-Boot, 커널 및 이미지 유형을 생성합니다. file. 대부분의 머신 구성은 SD 카드 이미지(.wic)와 rootfs 이미지(.tar)를 제공합니다. SD 카드 이미지에는 해당 하드웨어를 부팅하는 데 적합한 파티션된 이미지(U-Boot, 커널, rootfs 등 포함)가 포함되어 있습니다.

6.1 SD 카드 이미지 플래싱
SD 카드 이미지 file .wic에는 해당 하드웨어를 부팅하는 데 적합한 분할된 이미지(U-Boot, 커널, rootfs 등 포함)가 포함되어 있습니다. SD 카드 이미지를 플래시하려면 다음 명령을 실행하십시오.
zstdcat .wic.zst | sudo dd=/dev/sd bs=1만 전환=fsync
플래시에 대한 자세한 내용은 i.MX Linux 사용자 가이드(IMXLUG)의 "부팅할 SD/MMC 카드 준비" 섹션을 참조하세요. NXP eIQ 기계 학습 애플리케이션의 경우 추가 여유 디스크 공간(약 1GB)이 필요합니다. local.conf에 IMAGE_ROOTFS_EXTRA_SPACE 변수를 추가하여 정의됩니다. file Yocto 구축 과정 전. 참조 Yocto 프로젝트 메가 매뉴얼.

사용자 정의

i.MX Linux OS에서 빌드하고 사용자 정의할 수 있는 세 가지 시나리오가 있습니다.

  • i.MX Yocto 프로젝트 BSP를 구축하고 i.MX 참조 보드에서 유효성을 검사합니다. 이 문서의 지침에서는 이 방법을 자세히 설명합니다.
  • 커널을 사용자 정의하고 커널과 U-Boot를 사용하여 사용자 정의 보드 및 장치 트리를 생성합니다. SDK를 빌드하고 Yocto 프로젝트 빌드 환경 외부에서만 커널 및 U-Boot를 빌드하기 위한 호스트 시스템을 설정하는 방법에 대한 자세한 내용은 i의 "독립 실행형 환경에서 U-Boot 및 커널을 빌드하는 방법" 장을 참조하세요. .MX 사용자 가이드(IMXLUG).
  • 사용자 정의 Yocto 프로젝트 계층을 생성하여 i.MX Linux 릴리스에 제공된 BSP에서 패키징을 추가하거나 제거하여 배포판을 사용자 정의합니다. i.MX는 다양한 데모 ex를 제공합니다.ampi.MX BSP 릴리스 위에 사용자 정의 레이어를 표시하는 파일입니다. 이 문서의 나머지 섹션에서는 사용자 정의 DISTRO 및 보드 구성을 생성하기 위한 지침을 제공합니다.

7.1 사용자 정의 배포판 만들기
사용자 정의 배포판은 사용자 정의 빌드 환경을 구성할 수 있습니다. 배포판 file릴리스된 fsl-imx-wayland, fslimx-xwayland 및 fsl-imx-fb는 모두 특정 그래픽 백엔드에 대한 구성을 보여줍니다. Distros를 사용하여 커널, U-Boot 및 GStreamer와 같은 다른 매개변수를 구성할 수도 있습니다. i.MX 배포판 filei.MX Linux OS BSP 릴리스를 테스트하는 데 필요한 사용자 정의 빌드 환경을 생성하도록 설정되었습니다.
각 고객이 자신만의 배포판을 만드는 것이 좋습니다. file 이를 사용하여 빌드 환경에 대한 공급자, 버전 및 사용자 정의 구성을 설정합니다. distro는 기존 distro를 복사하여 생성됩니다. file, 또는 poky.conf와 같은 것을 포함하고 추가 변경 사항을 추가하거나, i.MX 배포판 중 하나를 포함하고 이를 시작점으로 사용합니다.

7.2 사용자 정의 보드 구성 만들기
참조 보드를 개발하는 공급업체는 자신의 보드를 FSL 커뮤니티 BSP에 추가할 수 있습니다.
FSL 커뮤니티 BSP가 지원하는 새로운 시스템을 사용하면 소스 코드를 커뮤니티와 쉽게 공유하고 커뮤니티로부터 피드백을 받을 수 있습니다.
Yocto 프로젝트를 사용하면 새로운 i.MX 기반 보드용 BSP를 쉽게 생성하고 공유할 수 있습니다. 업스트리밍 프로세스는 Linux OS 커널과 부트로더가 해당 머신에 대해 작동하고 테스트될 때 시작되어야 합니다. 안정적인 Linux 커널과 부트로더를 갖는 것이 매우 중요합니다(예:ample, U-Boot)를 머신 구성에서 가리킵니다. file, 해당 머신에 사용되는 기본 항목이 됩니다.
또 다른 중요한 단계는 새 기계의 관리자를 결정하는 것입니다. 관리자는 해당 보드에서 작동하는 기본 패키지 세트를 유지하는 책임을 맡은 사람입니다. 머신 관리자는 커널과 부트로더를 최신 상태로 유지하고 해당 머신에 대해 사용자 공간 패키지를 테스트해야 합니다.

필요한 단계는 다음과 같습니다.

  1. 커널 구성 사용자 정의 file필요에 따라. 커널 구성 file 은 arch/arm/configs에 있으며 공급업체 커널 레시피는 커널 레시피를 통해 로드된 버전을 사용자 정의해야 합니다.
  2. 필요에 따라 U-Boot를 사용자 정의하십시오. 이에 대한 자세한 내용은 i.MX BSP 포팅 가이드(IMXBSPPG)를 참조하세요.
  3. 보드 관리자를 지정합니다. 이 관리자는 다음을 확인합니다. files는 필요에 따라 업데이트되므로 빌드가 항상 작동합니다.
  4. 아래와 같이 Yocto 프로젝트 커뮤니티 지침에 설명된 대로 Yocto 프로젝트 빌드를 설정하세요.
    커뮤니티 마스터 분기를 사용합니다.
    ㅏ. 호스트 Linux OS 배포판에 따라 필요한 호스트 패키지를 다음에서 다운로드하세요. Yocto 프로젝트 빠른 시작.
    비. 다음 명령을 사용하여 Repo를 다운로드합니다.
    $curl https://storage.googleapis.com/git-repo-downloads/repo>~/bin/repo
    씨. 모든 것을 보관할 디렉터리를 만듭니다. 모든 디렉터리 이름을 사용할 수 있습니다. 이 문서에서는 imxcommunity-bsp를 사용합니다.
    $ mkdir imx-커뮤니티-bsp
    디. 다음 명령을 실행합니다.
    $ cd imx-커뮤니티-bsp
    이자형. Repo의 마스터 브랜치를 사용하여 Repo를 초기화합니다.
    $ 저장소 초기화 -u https://github.com/Freescale/fsl-community-bsp-platform -b 마스터
    에프. 제작에 사용될 레시피를 얻으세요.
    $ 저장소 동기화
    g. 다음 명령을 사용하여 환경을 설정합니다.
    $ 소스 설정 환경 빌드
  5. 유사한 기계를 선택하십시오 file fsl-community-bsp/sources/meta-freescale-3rdparty/conf/machine에서 보드를 나타내는 이름을 사용하여 복사합니다. 새 보드 편집 file 귀하의 보드에 대한 정보와 함께. 최소한 이름과 설명을 변경하십시오. MACHINE_FEATURE를 추가하세요.
  6. 최신 커뮤니티 마스터 브랜치로 변경 사항을 테스트하여 모든 것이 제대로 작동하는지 확인하세요. 최소한 core-image-minimal을 사용하세요.
    $ bitbake 코어-이미지-최소
  7. 패치를 준비합니다. 레시피 스타일 가이드와 기여 섹션의 git.yoctoproject.org/cgit/cgit.cgi/meta-freescale/tree/README를 따르세요.
  8. Meta-freescale-3rdparty로 업스트림합니다. 업스트림하려면 패치를 다음 주소로 보내세요. Metafreescale@yoctoproject.org.

7.3 BSP의 보안 취약점 모니터링
CVE(Common Vulnerability and Exposures) 모니터링은 Timesys의 NXP 지원 Vigiles 도구를 사용하여 수행할 수 있습니다. Vigiles는 대상 이미지에 대한 빌드 타임 Yocto CVE 분석을 제공하는 취약점 모니터링 및 관리 도구입니다. 이는 Yocto 프로젝트 BSP에 사용된 소프트웨어에 대한 메타데이터를 수집하고 이를 NIST, Ubuntu 및 기타 여러 소스를 포함한 다양한 소스의 CVE에 대한 정보를 통합하는 CVE 데이터베이스와 비교함으로써 수행됩니다.
높은 수준의 오버view 감지된 취약점 중 일부가 반환되며 영향을 미치는 CVE, 심각도 및 사용 가능한 수정 사항에 대한 정보가 포함된 전체 세부 분석이 제공됩니다. view온라인 에드.
온라인으로 보고서에 액세스하려면 다음 링크를 따라 NXP Vigiles 계정에 등록하세요.
https://www.timesys.com/register-nxp-vigiles/
Vigiles 설정 및 실행에 대한 추가 정보는 여기에서 확인할 수 있습니다.
https://github.com/TimesysGit/meta-timesys
https://www.nxp.com/vigiles

7.3.1 구성
BSP 빌드의 conf/bblayers.conf에 Meta-timesys를 추가하세요.
의 형식을 따르세요. file 그리고 Meta-timesys를 추가하세요:
BBLAYERS += "${BSPDIR}/sources/meta-timesys"
conf/local.conf의 INHERIT 변수에 vigiles를 추가합니다:
상속 += “경계”

7.3.2 실행
Meta-timesys가 빌드에 추가되면 Vigiles는 Linux BSP가 Yocto로 빌드될 때마다 보안 취약점 스캔을 실행합니다. 추가 명령이 필요하지 않습니다. 각 빌드가 완료된 후 취약점 스캔 정보는 imx-yocto-bsp/ 디렉터리에 저장됩니다. /시위.
당신은 할 수 있습니다 view 다음을 통해 보안 검색 세부정보를 확인하세요.

  • 명령줄(요약)
  • 온라인(세부정보)
    간단히 열어 file 명명 된 -report.txt, 자세한 온라인 보고서에 대한 링크가 포함되어 있습니다.

자주 묻는 질문

8.1 빠른 시작
이 섹션에서는 Linux 머신에서 Yocto 프로젝트를 설정하고 이미지를 빌드하는 방법을 요약합니다. 이것이 무엇을 의미하는지에 대한 자세한 설명은 위 섹션에 나와 있습니다.

"repo" 유틸리티 설치
BSP를 얻으려면 "repo"가 설치되어 있어야 합니다. 이 작업은 한 번만 수행하면 됩니다.

$: mkdir ~/bin
$:curl https://storage.googleapis.com/git-repo-downloads/repo>~/bin/repo
$: chmod a+x ~/bin/repo
$: 경로=${경로}:~/bin

BSP Yocto 프로젝트 환경 다운로드.
repo init의 -b 옵션에 원하는 릴리스의 올바른 이름을 사용하십시오. 이 작업은 각 릴리스마다 한 번씩 수행해야 하며 첫 번째 단계에서 생성된 디렉터리에 대한 배포를 설정합니다. repo sync를 실행하여 소스 아래의 레시피를 최신으로 업데이트할 수 있습니다.
$: mkdir imx-yocto-bsp
$: CD imx-yocto-bsp
$: repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-nanbild m imx-6.6.3-1.0.0.xml
: 저장소 동기화
메모:
https://github.com/nxp-imx/imx-manifest/tree/imx-linux-nanbield 모든 매니페스트 목록이 있습니다 file이번 릴리스에서는 지원됩니다.

특정 백엔드에 대한 설정
i.MX 8 및 i.MX 9 프레임버퍼는 지원되지 않습니다. i.MX 6 및 i.MX 7 SoC에만 사용하세요.

프레임버퍼 설정:
$: DISTRO=fsl-imx-fb 머신= 소스 imx-setup-release.sh -b 빌드-fb
Wayland 설정:
$: DISTRO=fsl-imx-wayland MACHINE= 소스 imx-setup-release.sh -b 빌드-wayland
XWayland 설정:
$: DISTRO=fsl-imx-xwayland 머신= 소스 imx-setup-release.sh -b 빌드-xwayland

모든 백엔드용 구축
Qt 없이 빌드
$: bitbake imx-이미지-멀티미디어
Qt 6 및 기계 학습 기능으로 구축
$: bitbake imx-image-full

8.2 로컬 구성 조정
Yocto 프로젝트 빌드는 특히 여러 빌드 디렉토리에서 빌드할 때 시간과 디스크 사용량 측면에서 상당한 빌드 리소스를 차지할 수 있습니다. 이를 최적화하는 방법이 있습니다. 예를 들어amp파일에서는 공유 상태 캐시(빌드 상태 캐시) 및 다운로드 디렉터리(다운로드한 패키지 보관)를 사용합니다. local.conf의 어느 위치에나 설정될 수 있습니다. file 다음과 같은 문을 추가하여:
DL_DIR=”/opt/imx/yocto/imx/다운로드”
SSTATE_DIR=”/opt/imx/yocto/imx/sstate-cache”
디렉터리는 이미 존재해야 하며 적절한 권한이 있어야 합니다. 공유 상태는 빌드 시간을 최소화하기 위해 공유 캐시를 사용하는 여러 빌드 디렉터리가 설정된 경우에 도움이 됩니다. 공유 다운로드 디렉토리는 가져오기 시간을 최소화합니다. 이러한 설정이 없으면 Yocto 프로젝트는 기본적으로 sstate 캐시 및 다운로드를 위한 빌드 디렉터리를 사용합니다.
DL_DIR 디렉터리에 다운로드된 모든 패키지는 다음과 같이 표시됩니다. .완료. 네트워크에서 패키지를 가져오는 데 문제가 있는 경우 패키지의 백업 버전을 DL_DIR 디렉터리에 수동으로 복사하고 .완료 file 터치 명령으로. 그런 다음 bitbake 명령을 실행합니다.
비트베이크 .
자세한 내용은 다음을 참조하세요. Yocto 프로젝트 참조 매뉴얼 — Yocto Project ® 5.0.1 문서.

8.3 레시피
각 구성요소는 레시피를 사용하여 빌드됩니다. 새 구성 요소의 경우 소스(SRC_URI)를 가리키도록 레시피를 생성하고 해당하는 경우 패치를 지정해야 합니다. Yocto 프로젝트 환경은 make에서 빌드됩니다.file 레시피의 SRC_URI로 지정된 위치에 있습니다. 자동 도구에서 빌드가 설정되면 레시피는 autotools 및 pkgconfig를 상속해야 합니다. 만들다fileYocto 프로젝트로 빌드된 패키지를 얻으려면 크로스 컴파일 도구로 CC를 재정의할 수 있도록 허용해야 합니다.

일부 구성 요소에는 레시피가 있지만 추가 패치나 업데이트가 필요합니다. 이는 bbappend 레시피를 사용하여 수행할 수 있습니다. 이는 업데이트된 소스에 대한 기존 레시피 세부정보에 추가됩니다. 예를 들어amp파일에서 새 패치를 포함하는 bbappend 레시피에는 다음 내용이 있어야 합니다.
FILESEXTRAPATHS:prepend := “${THISDIR}/${PN}:”
SRC_URI += file:// .반점
FILESEXTRAPATHS_prepend는 Yocto 프로젝트에게 SRC_URI에 나열된 패치를 찾기 위해 나열된 디렉토리를 찾도록 지시합니다.

메모:
bbappend 레시피가 선택되지 않는 경우, view 가져오기 로그 file 작업 폴더 하위(log.do_fetch)에서 관련 패치가 포함되어 있는지 확인하실 수 있습니다. 때로는 bbappend의 버전 대신 Git 버전의 레시피가 사용되는 경우도 있습니다. files.

8.4 추가 패키지 선택 방법
해당 패키지에 대해 제공된 레시피가 있는 경우 추가 패키지를 이미지에 추가할 수 있습니다. 커뮤니티에서 제공하는 검색 가능한 레시피 목록은 다음에서 찾을 수 있습니다. layers.openembedded.org/. 애플리케이션에 이미 Yocto 프로젝트 레시피가 있는지 검색하여 어디서 다운로드할 수 있는지 찾을 수 있습니다.

8.4.1 이미지 업데이트
이미지는 패키지 및 환경 구성의 집합입니다.
이미지 file (예: imx-image-multimedia.bb)는 file 체계.
뿌리 file 시스템, 커널, 모듈 및 U-Boot 바이너리는 build/tmp/deploy/images/에서 사용할 수 있습니다. .

메모:
패키지를 이미지에 포함하지 않고 빌드할 수 있지만 패키지를 rootfs에 자동으로 설치하려면 이미지를 다시 빌드해야 합니다.

8.4.2 패키지 그룹
패키지 그룹은 모든 이미지에 포함될 수 있는 패키지 세트입니다.
패키지 그룹에는 패키지 세트가 포함될 수 있습니다. 예를 들어amp즉, 멀티미디어 작업은 VPU 패키지가 빌드되었는지 여부를 머신에 따라 결정할 수 있으므로 BSP가 지원하는 모든 보드에 대해 멀티미디어 패키지 선택이 자동화될 수 있으며 멀티미디어 패키지만 이미지에 포함됩니다.
다음 줄을 추가하면 추가 패키지를 설치할 수 있습니다. /local.conf.
CORE_IMAGE_EXTRA_INSTALL:추가 = ” ”
많은 패키지 그룹이 있습니다. 패키지 그룹 또는 패키지 그룹이라는 하위 디렉터리에 있습니다.

8.4.3 선호 버전
기본 버전은 특정 구성요소에 사용할 레시피의 기본 버전을 지정하는 데 사용됩니다. 구성 요소에는 서로 다른 레이어에 여러 레시피가 있을 수 있으며 기본 버전은 사용할 특정 버전을 가리킵니다.

Meta-imx 계층의 layer.conf에서는 프로덕션 환경에 정적 시스템을 제공하기 위해 모든 레시피에 대해 기본 버전이 설정되어 있습니다. 이러한 기본 버전 설정은 공식 i.MX 릴리스에 사용되지만 향후 개발에 필수적인 것은 아닙니다.
선호 버전은 이전 버전이 어떤 레시피를 사용해야 할지 혼란을 야기할 때도 도움이 됩니다.
예를 들어amp파일, imx-test 및 imx-lib에 대한 이전 레시피에서는 연도-월 버전 관리를 사용했지만 다음과 같이 변경되었습니다. 버전 관리. 선호하는 버전이 없으면 이전 버전이 선택될 수 있습니다. _git 버전이 있는 레시피는 기본 버전이 설정되지 않는 한 일반적으로 다른 레시피보다 선택됩니다. 선호하는 버전을 설정하려면 local.conf에 다음을 입력하세요.
PREFERRED_VERSION_ : = “ ”
선호하는 버전 사용에 대한 더 많은 정보는 Yocto 프로젝트 매뉴얼을 참조하세요.

8.4.4 선호하는 공급자
기본 공급자는 특정 구성 요소에 대한 기본 공급자를 지정하는 데 사용됩니다. 구성 요소에는 여러 공급자가 있을 수 있습니다. 예를 들어amp파일에서 Linux 커널은 i.MX 또는 kernel.org에서 제공할 수 있으며 선호하는 공급자는 사용할 공급자를 명시합니다.
예를 들어amp즉, U-Boot는 denx.de와 i.MX를 통해 커뮤니티에서 모두 제공됩니다. 커뮤니티 제공자는 u-boot-fslc에 의해 지정됩니다. i.MX 공급자는 u-boot-imx에 의해 지정됩니다. 선호하는 공급자를 지정하려면 local.conf에 다음을 입력하십시오.
PREFERRED_PROVIDER_ : = “ ”
PREFERRED_PROVIDER_u-boot_mx6 = "u-boot-imx"

8.4.5 SoC 제품군
SoC 제품군은 특정 시스템 칩 세트에 적용되는 변경 사항 클래스를 문서화합니다. 각 기계 구성에서 file, 해당 시스템은 특정 SoC 제품군으로 나열됩니다. 예를 들어amp즉, i.MX 6DualLite Sabre-SD는 i.MX 6 및 i.MX 6DualLite SoC 제품군에 나열되어 있습니다. i.MX 6Solo Sabre-auto는 i.MX 6 및 i.MX 6Solo SoC 제품군에 나열되어 있습니다. 일부 변경 사항은 local.conf의 특정 SoC 제품군을 대상으로 하여 시스템 구성의 변경 사항을 재정의할 수 있습니다. file. 다음은 전직이다ampmx6dlsabresd 커널 설정 변경 파일입니다.
KERNEL_DEVICETREE:mx6dl = "imx6dl-sabresd.dts"
SoC 제품군은 특정 하드웨어 클래스에만 적용되는 변경을 수행할 때 유용합니다. 예를 들어amp즉, i.MX 28 EVK에는 VPU(비디오 처리 장치)가 없으므로 VPU에 대한 모든 설정에서는 올바른 칩 클래스에 맞게 i.MX 5 또는 i.MX 6을 사용해야 합니다.

8.4.6 BitBake 로그
BitBake는 tmp/work/의 임시 디렉터리에 빌드 및 패키지 프로세스를 기록합니다. / /임시.
구성 요소가 패키지를 가져오지 못하는 경우 오류를 표시하는 로그는 file log.do_fetch.
구성 요소가 컴파일되지 않으면 오류를 표시하는 로그가 file log.do_compile.
구성 요소가 예상대로 배포되지 않는 경우가 있습니다. 빌드 구성 요소 디렉터리(tmp/work/ / ). 각 레시피의 package, packages-split 및 sysroot* 디렉터리를 확인하여 files는 거기에 배치됩니다(그들이 s인 곳).tag배포 디렉터리에 복사되기 전에).

8.4.7 CVE 모니터링 및 알림을 위한 메커니즘을 추가하는 방법
CVE 추적 메커니즘은 GitHub에서 가져올 수 있습니다. imx-yocto-bsp/sources 디렉터리로 이동합니다.

다음 명령을 실행하세요.
git 클론 https://github.com/TimesysGit/meta-timesys.git -b 커크스톤
이 명령은 NXP 및 Timesys에서 제공하는 Vigiles 제품의 일부로 보안 모니터링 및 알림에 사용되는 이미지 매니페스트 생성을 위한 스크립트를 제공하는 추가 메타레이어를 다운로드합니다. 솔루션 사용 방법은 섹션 7.3을 따르십시오.
전체 CVE 보고에 액세스하려면 LinuxLink 라이센스 키가 필요합니다. 개발 환경에 키가 없으면 Vigiles는 데모 모드에서 계속 실행되어 요약 보고서만 생성합니다.
LinuxLink에서 Vigiles 계정에 로그인하십시오(또는 계정이 없는 경우 계정을 만드십시오: https://www.timesys.com/registernxp-vigiles/). 기본 설정에 액세스하고 새 항목을 생성하세요.
열쇠. 키 다운로드 file 귀하의 개발 환경에. 키 위치 지정 file Yocto의 conf/local.conf에 file 다음과 같은 진술과 함께:
VIGILES_KEY_FILE = "/tools/timesys/linuxlink_key"

참고문헌

  • 부팅 스위치에 대한 자세한 내용은 i.MX Linux 사용자 가이드(IMXLUG)의 "i.MX 보드를 부팅하는 방법" 섹션을 참조하세요.
  • U-Boot를 사용하여 이미지를 다운로드하는 방법은 i.MX Linux 사용자 가이드(IMXLUG)의 "U-Boot를 사용하여 이미지 다운로드" 섹션을 참조하세요.
  • SD/MMC 카드를 설정하는 방법은 i.MX Linux 사용 설명서(IMXLUG)의 "부팅할 SD/MMC 카드 준비" 섹션을 참조하십시오.

문서의 소스 코드에 대한 참고 사항

Examp이 문서에 표시된 파일 코드에는 다음과 같은 저작권 및 BSD-3-Clause 라이선스가 있습니다.
Copyright 2024 NXP 소스 및 바이너리 형식의 재배포 및 사용은 수정 여부에 관계없이 다음 조건이 충족되는 경우 허용됩니다.

  1. 소스 코드를 재배포하는 경우에는 위의 저작권 고지, 본 조건 목록 및 다음 면책 조항을 그대로 유지해야 합니다.
  2. 이진 형태로 재배포하는 경우, 위의 저작권 고지, 본 조건 목록 및 다음 면책 조항을 배포물과 함께 제공되는 문서 및/또는 기타 자료에 반드시 포함해야 합니다.
  3. 특정 사전 서면 허가 없이는 저작권 소유자의 이름이나 기여자의 이름을이 소프트웨어에서 파생 된 제품을 보증하거나 홍보하는 데 사용할 수 없습니다.

이 소프트웨어는 저작권 보유자 및 기여자에 의해 "있는 그대로" 제공되며, 상품성 및 특정 목적에의 적합성에 대한 묵시적인 보증을 포함하되 이에 국한되지 않는 모든 명시적 또는 묵시적 보증은 부인됩니다. 어떠한 경우에도 저작권 보유자나 기여자는 직접적, 간접적, 부수적, 특별, 예시적 또는 결과적 손해(대체 상품이나 서비스의 조달, 사용, 데이터 또는 이익의 손실을 포함하되 이에 국한되지 않음)에 대해 책임을 지지 않습니다. 또는 사업 중단), 계약상, 엄격 책임, 또는 이 소프트웨어의 사용으로 인해 발생하는 불법 행위(과실 또는 기타 포함) 등의 책임 이론에 따라, 그러한 손해의 가능성이 통보된 경우에도 마찬가지입니다.

개정 내역

이 표에는 개정 내역이 나와 있습니다.
개정 내역

문서 ID 날짜 실질적인 변화
IMXLXYOCTOUG v.LF6.6.3_1.0.0 29년 2024월 XNUMX일 6.6.3 커널로 업그레이드하고 i.MX 91P를 제거하고 i.MX 95를 알파 품질로 추가했습니다.
IMXLXYOCTOUG v.LF6.1.55_2.2.0 12/2023 6.1.55 커널로 업그레이드되었습니다.
IMXLXYOCTOUG v.LF6.1.36_2.1.0 09/2023 6.1.36 커널로 업그레이드하고 I.MX 91P를 추가했습니다.
IMXLXYOCTOUG v.LF6.1.22_2.0.0 06/2023 6.1.22 커널로 업그레이드되었습니다.
IMXLXYOCTOUG v.LF6.1.1_1.0.0 04/2023 섹션 3.2의 명령줄 오류 수정.
IMXLXYOCTOUG v.LF6.1.1_1.0.0 03/2023 6.1.1 커널로 업그레이드되었습니다.
IMXLXYOCTOUG v.LF5.15.71_2.2.0 12/2022 5.15.71 커널로 업그레이드되었습니다.
IMXLXYOCTOUG v.LF5.15.52_2.1.0 09/2022 5.15.52 커널로 업그레이드하고 i.MX 93을 추가했습니다.
IMLXVOCTOUG v.LF5.15.32_2.0.0 06/2022 5.15.32 커널, U-Boot 2022.04 및 Kirkstone Yocto로 업그레이드되었습니다.
IMXLXYOCTOUG v.LF5.15.5_1.0.0 03/2022 5.15.5 커널, Honister Yocto 및 Qt6으로 업그레이드되었습니다.
IMXLXYOCTOUG v.LF5.10.72_2.2.0 12/2021 커널을 5.10.72로 업그레이드하고 BSP를 업데이트했습니다.
IMXLXYOCTOUG v.LF5.10.52_2.1.0 09/2021 i.MX GULP Alpha용으로 업데이트되었으며 커널은 5.10.52로 업그레이드되었습니다.
IMXLXYOCTOUG v.LF5.10.35_2.0.0 06/2021 5.10.35 커널로 업그레이드되었습니다.
IMXLXYOCTOUG v.LF5.10.9_1.0.0 04/2021 섹션 3.1 '호스트 패키지'의 명령줄에서 오타를 수정했습니다.
IMXLXYOCTOUG v.LF5.10.9_1.0.0 03/2021 5.10.9 커널로 업그레이드되었습니다.
IMXLXYOCTOUG v.L5.4.70_2.3.0 01/2021 “Arm Cortex-M4 이미지 실행” 섹션의 명령줄을 업데이트했습니다.
IMXLXYOCTOUG v.L5.4.70_2.3.0 12/2020 i.MX 5.4 i를 포함한 i.MX 보드 릴리스용 통합 GA입니다. MX 8M Plus 및 i.MX 8DXL.
IMXLXYOCTOUG v.L5.4.47_2.2.0 09/2020 i.MX 5.4M Plus용 I.MX 2 Beta8 릴리스, 8DXL용 베타 및 출시된 I.MX 보드용 통합 GA입니다.
IMXLXYOCTOUG v.L5.4.24_2.1.0 06/2020 i.MX 5.4M Plus용 i.MX 8 베타 릴리스, 2DXL용 Aipha8 및 출시된 i.MX 보드용 통합 GA입니다.
IMXLXYOCTOUG v.L5.4.3_2.0.0 04/2020 i.MX 5.4M Plus 및 8DXL EVK 보드용 i.MX 8 Alpha 릴리스입니다.
IMXLXYOCTOUG v.LF5A.3_1.0.0 03/2020 I.MX 5.4 커널 및 Yocto 프로젝트 업그레이드.
IMXLXYOCTOUG v.L4.19.35_1.1.0 10/2019 I.MX 4.19 커널 및 Yocto 프로젝트 업그레이드.
IMXLXYOCTOUG v.L4.19.35_1.0.0 07/2019 I.MX 4.19 베타 커널 및 Yocto 프로젝트 업그레이드.
IMXLXYOCTOUG v.L4.14.98_2.0.0_ga 04/2019 i.MX 4.14 커널 업그레이드 및 보드 업데이트.
IMXLXYOCTOUG v.L4.14.78_1.0.0_ga 01/2019 I.MX 6, i.MX 7, i.MX 8 제품군 GA 릴리스.
IMXLXYOCTOUG v14.14.62_1.0.0_ 베타 11/2018 i.MX 4.14 커널 업그레이드, Yocto 프로젝트 Sumo 업그레이드.
IMXLXYOCTOUG v14.9.123_2.3.0_ 8mm 09/2018 i.MX 8M 미니 GA 출시.
IMXLXYOCTOUG v14.9.88_2.2.0_ 8qxp-beta2 07/2018 i.MX 8QuadXPlus Beta2 릴리스.
IMXLXYOCTOUG v14.9.88_2.1.0_ 8mm-알파 06/2018 i.MX 8M 미니 알파 출시.
IMXLXYOCTOUG v14.9.88_2.0.0-ga 05/2018 i.MX 7ULP 및 i.MX 8M 쿼드 GA 릴리스.
IMXLXYOCTOUG v14.9.51_imx8mq-ga 03/2018 i.MX 8M 쿼드 GA가 추가되었습니다.
IMXLXYOCTOUG v14.9.51_8qm-베타2/8qxp-베타 02/2018 i.MX 8QuadMax Beta2 및 i.MX 8QuadXPlus Beta가 추가되었습니다.
IMXLXYOCTOUG v.L4.9.51_imx8mq- 베타 12/2017 i.MX 8M 쿼드가 추가되었습니다.
IMXLXYOCTOUG v14.9.51_imx8qm- 베타 1 12/2017 i.MX 8QuadMax가 추가되었습니다.
IMXLXYOCTOUG v14.9.51_imx8qxp- 알파 11/2017 최초 출시.

법적 정보

정의
초안 - 문서의 초안 상태는 콘텐츠가 여전히 내부 검토 중임을 나타냅니다.view 그리고 수정이나 추가가 있을 수 있는 공식 승인을 받아야 합니다. NXP Semiconductors는 문서의 초안 버전에 포함된 정보의 정확성이나 완전성에 대해 어떠한 진술이나 보증도 제공하지 않으며, 그러한 정보의 사용으로 인한 결과에 대해 책임을 지지 않습니다.
면책 조항
제한된 보증 및 책임 — 이 문서의 정보는 정확하고 신뢰할 수 있는 것으로 간주됩니다. 그러나 NXP Semiconductors는 그러한 정보의 정확성 또는 완전성에 대해 명시적이든 묵시적이든 어떠한 진술이나 보증도 하지 않으며 그러한 정보의 사용 결과에 대해 책임을 지지 않습니다. NXP Semiconductors는 NXP Semiconductors 외부의 정보 출처에서 제공한 경우 이 문서의 내용에 대해 책임을 지지 않습니다.
어떠한 경우에도 NXP Semiconductors는 간접적, 우발적, 징벌적, 특별 또는 결과적 손해(이익 손실, 저축 손실, 사업 중단, 제품 제거 또는 교체와 관련된 비용 또는 재작업 비용을 포함하되 이에 국한되지 않음)에 대해 책임을 지지 않습니다. 그러한 손해는 불법 행위(과실 포함), 보증, 계약 위반 또는 기타 법적 이론에 근거하지 않습니다.
어떤 이유로든 고객이 입을 수 있는 손해에도 불구하고, 여기에 설명된 제품에 대해 고객에 대한 NXP Semiconductors의 총체적 및 누적 책임은 NXP Semiconductors의 상업적 판매 이용 약관에 따라 제한됩니다. 변경할 권리 - NXP Semiconductors는 사양 및 제품 설명을 포함하되 이에 국한되지 않고 이 문서에 게시된 정보를 언제든지 사전 통지 없이 변경할 권리를 보유합니다. 이 문서는 발행 이전에 제공된 모든 정보를 대체하고 대체합니다.
사용에 대한 적합성 — NXP Semiconductors 제품은 생명 유지, 생명에 중요한 또는 안전에 중요한 시스템이나 장비, NXP Semiconductors 제품의 고장 또는 오작동으로 인해 부상, 사망 또는 심각한 재산 또는 환경 피해. NXP Semiconductors 및 그 공급업체는 그러한 장비 또는 응용 프로그램에 NXP Semiconductors 제품을 포함 및/또는 사용하는 것에 대해 책임을 지지 않으므로 그러한 포함 및/또는 사용에 대한 책임은 고객에게 있습니다.
응용 프로그램 — 이러한 제품에 대해 여기에 설명된 응용 프로그램은 설명을 위한 것입니다. NXP Semiconductors는 이러한 응용 프로그램이 추가 테스트 또는 수정 없이 지정된 용도에 적합할 것이라는 진술이나 보증을 하지 않습니다.
고객은 NXP Semiconductors 제품을 사용하는 응용 프로그램 및 제품의 설계 및 운영에 대한 책임이 있으며 NXP Semiconductors는 응용 프로그램 또는 고객 제품 설계에 대한 지원에 대해 어떠한 책임도 지지 않습니다. NXP Semiconductors 제품이 고객의 응용 프로그램 및 계획된 제품, 계획된 응용 프로그램 및 고객의 제XNUMX자 고객 사용에 적합한지 여부를 결정하는 것은 전적으로 고객의 책임입니다. 고객은 응용 프로그램 및 제품과 관련된 위험을 최소화하기 위해 적절한 설계 및 작동 안전 장치를 제공해야 합니다.
NXP Semiconductors는 고객의 응용 프로그램이나 제품 또는 고객의 제XNUMX자 고객이 사용하는 응용 프로그램이나 사용의 약점이나 불이행을 기반으로 하는 불이행, 손상, 비용 또는 문제와 관련된 어떠한 책임도 지지 않습니다. 고객은 NXP Semiconductors 제품을 사용하는 고객의 응용 프로그램 및 제품에 대해 필요한 모든 테스트를 수행하여 응용 프로그램 및 제품 또는 응용 프로그램의 불이행을 방지하거나 고객의 제XNUMX자 고객이 사용할 책임이 있습니다. NXP는 이와 관련하여 어떠한 책임도 지지 않습니다.
상업용 판매 약관 — NXP Semiconductors 제품은 다음에 게시된 일반 상업용 판매 약관에 따라 판매됩니다. https://www.nxp.com/profile/terms, 유효한 서면 개별 계약에서 달리 동의하지 않는 한. 개별 계약이 체결되는 경우 해당 계약의 약관만 적용됩니다. NXP Semiconductors는 이로써 고객이 NXP Semiconductors 제품을 구매하는 것과 관련하여 고객의 일반 이용 약관을 적용하는 것을 명시적으로 반대합니다.
수출 통제 — 이 문서와 여기에 설명된 항목은 수출 통제 규정의 적용을 받을 수 있습니다. 수출에는 관할 당국의 사전 승인이 필요할 수 있습니다.
비자동차 적격 제품에 사용하기 위한 적합성 — 이 문서에서 이 특정 NXP Semiconductors 제품이 자동차 인증을 받았다고 명시적으로 명시하지 않는 한, 해당 제품은 자동차용으로 적합하지 않습니다. 이는 자동차 테스트 또는 애플리케이션 요구 사항에 따라 인증되거나 테스트되지 않았습니다. NXP Semiconductors는 자동차 장비 또는 애플리케이션에 비자동차 인증 제품을 포함 및/또는 사용하는 것에 대해 어떠한 책임도 지지 않습니다.
고객이 자동차 사양 및 표준에 대한 자동차 애플리케이션의 설계 및 사용을 위해 제품을 사용하는 경우 고객 (a) 해당 자동차 애플리케이션, 용도 및 사양에 대한 제품에 대한 NXP Semiconductors의 보증 없이 제품을 사용해야 합니다. b) 고객이 NXP Semiconductors의 사양을 넘어 자동차 애플리케이션용으로 제품을 사용할 때마다 그러한 사용은 전적으로 고객의 책임이며 (c) 고객은 NXP Semiconductors의 고객 설계 및 사용으로 인한 모든 책임, 손해 또는 실패한 제품 클레임에 대해 완전히 면책합니다. NXP Semiconductors의 표준 보증 및 NXP Semiconductors의 제품 사양을 넘어선 자동차 애플리케이션용 제품입니다.
번역 — 해당 문서의 법적 정보를 포함하여 문서의 비영어(번역) 버전은 참조용입니다. 번역된 버전과 영어 버전 간에 불일치가 있는 경우 영어 버전이 우선합니다.
보안 — 고객은 모든 NXP 제품이 확인되지 않은 취약점에 노출될 수 있거나 알려진 제한 사항이 있는 기존 보안 표준 또는 사양을 지원할 수 있음을 이해합니다. 고객은 이러한 취약점이 고객의 애플리케이션 및 제품에 미치는 영향을 줄이기 위해 수명 주기 전반에 걸쳐 애플리케이션 및 제품의 설계 및 운영을 책임집니다. 고객의 책임은 고객의 애플리케이션에서 사용하기 위해 NXP 제품이 지원하는 기타 개방형 및/또는 독점 기술에도 적용됩니다. NXP는 취약점에 대해 어떠한 책임도 지지 않습니다. 고객은 NXP의 보안 업데이트를 정기적으로 확인하고 적절하게 후속 조치를 취해야 합니다.
고객은 의도된 응용 프로그램의 규칙, 규정 및 표준을 가장 잘 충족하는 보안 기능이 있는 제품을 선택하고 제품에 대한 궁극적인 설계 결정을 내립니다. NXP가 제공할 수 있는 모든 정보 또는 지원.
NXP에는 제품 보안 사고 대응 팀(PSIRT)이 있습니다(연락처: PSIRT@nxp.com) NXP 제품의 보안 취약점에 대한 조사, 보고, 솔루션 릴리스를 관리합니다.
NXP BV — NXP BV는 운영 회사가 아니며 제품을 배포하거나 판매하지 않습니다.

상표
알림: 참조된 모든 브랜드, 제품 이름, 서비스 이름 및 상표는 해당 소유자의 자산입니다.
NXP — 워드마크 및 로고는 NXP BV의 상표입니다.

AMBA, Arm, Arm7, Arm7TDMI, Arm9, Arm11, Artisan, big.LITTLE, Cordio, CoreLink, CoreSight, Cortex, DesignStart, DynamIQ, Jazelle, Keil, Mali, Mbed, Mbed 지원, NEON, POP, RealView, SecurCore, Socrates, Thumb, TrustZone, ULINK, ULINK2, ULINK-ME, ULINKPLUS, ULINKpro, μVision, Versatile —은 미국 및/또는 기타 지역에서 Arm Limited(또는 자회사 또는 계열사)의 상표 및/또는 등록 상표입니다. 관련 기술은 특허, 저작권, 디자인 및 영업 비밀 중 일부 또는 전부에 의해 보호될 수 있습니다. 판권 소유.
엣지락 — NXP BV의 상표입니다.
eIQ — NXP BV의 상표입니다.
아이엠엑스 — NXP BV의 상표입니다.

IMXLXYOCTOUG
All information provid이 문서의 편집 내용에는 법적 고지 사항이 적용됩니다.
© 2024 NXP BV 판권 소유.
LF6.6.3_1.0.0 — 29년 2024월 XNUMX일

문서 / 리소스

NXP IMXLXYOCTOUG i.MX Yocto 프로젝트 [PDF 파일] 사용자 가이드
IMXLXYOCTOUG i.MX Yocto 프로젝트, i.MX Yocto 프로젝트, Yocto 프로젝트, 프로젝트

참고문헌

댓글을 남겨주세요

이메일 주소는 공개되지 않습니다. 필수 항목은 표시되어 있습니다. *