본문으로 이동

개인적인 사정으로 큰숲백과 관리를 무기한 중단합니다. 데이터베이스 덤프 관련 공지도 조만간 올리겠습니다.

  1. 큰숲백과:청사진에서 위키 발전의 대략적인 방향성을 제시했습니다. 의견이 있으신 분은 큰숲백과토론:청사진에서 의견을 남겨주시면 좋겠습니다.
  2. 기능상의 오류로 지원하지 않고 있는 기능에 대해서는 큰숲백과토론:이슈 트래커에 요약했습니다. 참고하시기 바랍니다.
  3. 큰숲백과 단축도메인 bigforest.wiki 열렸습니다.

Yocto (리눅스): 두 판 사이의 차이

352 바이트 추가됨 ,  2024년 6월 22일 (토)
잔글
잔글편집 요약 없음
21번째 줄: 21번째 줄:
== 특징 ==
== 특징 ==
=== 레이어, 레시피 ===
=== 레이어, 레시피 ===
각 애플리케이션은 meta-***라 불리는 레이어(Layer)에 빌드 설정 및 구성 요소 별 컴파일 설정인 레시피(recipe) 하위 폴더를 포함한다. 각 레시피에는 bb 확장자를 가진 기본 레시피와 기본 레시피를 확장하는 bbappend 확장자의 추가 레시피가 있다. 이 레이어들은 기본적으로 yocto 버전에 맞게 [[Git]] Branch가 존재하며, 브랜치가 존재하지 않는 경우 기본적으로 해당 버전의 욕토를 지원하지 않는 레시피라고 보면 된다.
각 애플리케이션은 meta-***라 불리는 레이어(Layer)에 빌드 설정 및 구성 요소 별 컴파일 설정인 레시피(recipe) 하위 폴더를 포함한다. 각 레시피에는 bb 확장자를 가진 기본 레시피와 기본 레시피를 확장하는 bbappend 확장자의 추가 레시피가 있다. 이 레이어들은 기본적으로 yocto 버전에 맞게 [[Git]] Branch가 존재하며, 브랜치가 존재하지 않는 경우 기본적으로 해당 버전의 욕토를 지원하지 않는 레시피라고 보면 된다. 레이어를 가져왔으면 전역 bblayer.conf 파일에 추가 후 bitbake 명령어로 빌드하면 된다.


또 안에 있는 소프트웨어의 버전이 욕토 버전에 따라 다른 경우도 있다. 대표적으로 리눅스 커널의 경우 dunfell은 4.19 버전, Kirkstone은 5.10과 5.15 버전을 지원한다.
또 안에 있는 소프트웨어의 버전이 욕토 버전에 따라 다른 경우도 있다. 대표적으로 리눅스 커널의 경우 dunfell은 4.19 버전, Kirkstone은 5.10과 5.15 버전을 지원한다.
28번째 줄: 28번째 줄:


그래서 빌드 자동화 및 배포판 관리에서 이점이 확실하기 때문에, 어느 정도 규모 있는 기업에서도 내부/외부 양 측면에서 모두 사용하는 모양. 당장 밑의 예시에 있는 webOS의 사례만 봐도 Python 스크립트로 오픈임베디드를 비롯한 프로젝트 레이어의 Git 브랜치들을 다수 받아온다.
그래서 빌드 자동화 및 배포판 관리에서 이점이 확실하기 때문에, 어느 정도 규모 있는 기업에서도 내부/외부 양 측면에서 모두 사용하는 모양. 당장 밑의 예시에 있는 webOS의 사례만 봐도 Python 스크립트로 오픈임베디드를 비롯한 프로젝트 레이어의 Git 브랜치들을 다수 받아온다.
배포판과 타깃 하드웨어에 따라 각각 레이어의 설정 폴더(meta-***/conf 폴더) 내에 distro 및 machine 하위 폴더를 만들어 설정을 분리할 수 있으며, 이것이 yocto 프로젝트의 진수(眞髓)다.
=== 파이썬과 쉘 스크립트 지원 ===
=== 파이썬과 쉘 스크립트 지원 ===
쉘 스크립트와 전용 명령어를 섞은 태스크 함수를 정의하여 빌드 과정을 설정할 수 있으나, 여기에 더해 [[파이썬]]으로도 빌드 스크립트를 짠 뒤 호출할 수 있다.
쉘 스크립트와 전용 명령어를 섞은 태스크 함수를 정의하여 빌드 과정을 설정할 수 있으나, 여기에 더해 [[파이썬]]으로도 빌드 스크립트를 짠 뒤 호출할 수 있다.