본문 바로가기

Yocto 개발3

[Yocto 시리즈 1] Yocto란 무엇인가 — Poky·BitBake·OpenEmbedded 이해 임베디드 리눅스 개발을 하다 보면 반드시 Yocto라는 이름을 만나게 돼요. 반도체 벤더의 BSP도, 사내 플랫폼 빌드 시스템도 결국 Yocto 위에서 돌아가는 경우가 대부분이거든요. 그런데 처음 접하면 Poky, BitBake, OpenEmbedded 같은 이름이 뒤섞여서 "그래서 Yocto가 뭔데?"라는 질문에 답하기가 의외로 어렵습니다. 이 글은 20회 연재의 첫 편으로, 그 관계를 한 번에 정리해 볼게요. 📑 목차1. Yocto Project란 — 배포판이 아니라 '배포판을 만드는 도구'2. 핵심 구성요소 — BitBake, OE-Core, Poky3. 레이어 모델 — Yocto 확장성의 핵심4. 빌드는 어떻게 흘러가나 — 큰 그림5. 버전과 릴리스 — 어떤 버전으로 시작할까6. 🧪 직접 해보.. 2026. 7. 21.
[Yocto 시리즈 3] 빌드 시스템 내부 동작 — 태스크 파이프라인과 sstate 캐시 1회차에서 Yocto의 큰 그림을, 2회차에서 메타데이터 파일들을 봤으니, 이번엔 bitbake core-image-minimal 한 줄을 쳤을 때 빌드 시스템 내부에서 실제로 무슨 일이 벌어지는지를 따라가 볼 차례예요. 처음 빌드는 몇 시간씩 걸리는데 두 번째 빌드는 몇 분 만에 끝나는 마법 — 그 비밀인 sstate 캐시까지 오늘 한 번에 정리합니다. 이 내부 동작이 머리에 그려져야 빌드 에러 로그에서 "지금 어느 단계가 실패했는지"를 즉시 읽어낼 수 있어요. 📑 목차1. bitbake 한 줄 뒤에서 벌어지는 일2. 태스크 파이프라인 — 소스에서 바이너리까지3. sysroot와 패키징 — 빌드 결과가 흘러가는 길4. sstate 캐시 — "다시 빌드하지 않는" 기술5. 🧪 직접 해보기 1. bit.. 2026. 7. 17.
[Yocto 시리즈 2] 레시피·레이어·메타데이터 — .bb, .bbappend, .conf, .bbclass 해부 지난 1회차에서 Yocto가 "배포판을 만드는 도구"라는 큰 그림을 봤다면, 이번엔 그 도구를 실제로 움직이는 재료를 뜯어볼 차례예요. Yocto 작업 디렉터리를 열면 .bb, .bbappend, .conf, .bbclass 네 가지 확장자가 끝없이 나오는데, 이 넷의 역할 구분이 서면 Yocto 코드 읽기가 갑자기 쉬워집니다. 실무에서 벤더 BSP를 분석하거나 빌드 에러의 원인 파일을 추적할 때 매일 쓰게 되는 지식이에요. 📑 목차1. 메타데이터 — Yocto를 움직이는 설계도2. 레시피(.bb) — 패키지 하나의 빌드 설명서3. 클래스(.bbclass) — 반복을 없애는 상속4. 설정 파일(.conf) — 모든 것을 묶는 접착제5. .bbappend와 레이어 우선순위 — 원본을 안 건드리는 수정6... 2026. 7. 14.