728x90

Yocto 40

Yocto Project의 레퍼런스 시스템 포키 (Poky)

Yocto Project에 대해서는 앞의 글에서 설명을 했지만, 간단히 요약하면 자신만의 임베디드 리눅스를 만들기 위한 도구, 템플릿등을 제공하는 여러 작은 프로젝트를 가지고 있다. Poky 소개 이 Yocto Project의 레퍼런스 시스템이 포키이고, 이 글에서는 포키를 받아 빌드를 하고 이를 가지고 할 수 있는 것들에 대해서 설명하고자 한다. 포키를 가지고 Beaglebone Black, qemux86 등에서 돌아가는 기본 리눅스 이미지 생성를 생성할 수 있고, 여기에 독자들이 필요한 서비스나 애플리케이션을 간단하게 추가하여 자신만의 리눅스를 만들 수 있다. 포키를 이용한 사례로, 자동차 플랫폼인 GENIVI와 AGL 등이 있다. GENIVI Poky 빌드: http://wiki.projects.g..

Yocto 2023.04.20

Yocto Project를 사용한 라즈베리 파이4 이미지 생성

Yocto Project를 사용하여 Raspberry PI4 이미지를 생성하는 방법을 설명한다. Yocto Project는 자신만의 임베디드 리눅스를 만들 수 있는 툴과 방법들을 제공한다. 여기서는 Yocto Project의 레퍼런스 시스템인 Poky를 가지고 빌드하여 이미지를 만드는 방법을 설명한다. 빌드할 수 있는 이미지는 다음과 같이 여러가지가 있다. 여기서는 부팅 후 기본적인 shell 까지 떨어지는 core-image-minimal 이미지를 빌드한다. Common targets are: core-image-minimal core-image-sato meta-toolchain adt-installer meta-ide-support 빌드 환경 Host System: Ubuntu 20.04 64bit..

Yocto 2023.04.20

Yocto Project 용어 설명 및 버전 관리

Yocto Project는 6개월 단위로 Reference System인 Poky와 관련 문서들을 릴리스 하고 2년 단위로 LTS 버전을 릴리스한다. 필자가 이 글을 쓸 때 최신 Release된 버전은 4.1 Langdale이고 LTS는 4.0 Kirkstone이다.. 일단 간단한 용어 설명부터 한다. 아래 내용은 필자가 이해한 기준이다. 처음 접하는 개발자가 쉽게 시작하려면 아래 Reference에 Download링크에 있는 Poky를 다운 받아서 시작하면 된다. 또는 조금 알게 되면, Bitbake와 OpenEmbedded를 맞는 버전을 각각 받아서 시작해도 된다. 버전 관련 호환성은 아래 Referene의 Release부분을 들어가서 보면 알 수 있다. 용어 설명 https://wiki.yoctop..

Yocto 2023.04.20

Yocto 프로젝트를 활용한 Tizen 빌드 세미나 자료

2015년 9월 TIZEN 개발자 Conference에서 발표한 Yocto Project를 사용해서 Tizen을 빌드하고 관련 내용을 설명한 자료이다. 이 "Creating new Tizen profiles using the Yocto Project" 자료에 의하면, Yocto Project는 Automotive, IoT분야에서 De facto 표준이라고 한다. :-) 그리고 Tizen with Yocto Project는 Raspberry pi2 MinnowBoard MAX HummingBoard 개발 보드를 지원한다고 한다. Tizen을 Yocto로 빌드하는 방법과 HTML5 App with Tizen recipe를 추가하는 방법에 대해 설명한다. https://www.slideshare.net/leo..

Yocto 2023.04.19

Yocto Project, OpenEmbedded를 지원하는 개발 보드

Yocto Project의 OpenEmbedded를 지원하는 개발 보드에 대해서 알아본다. 필자가 가지고 있는 보드는 Raspberry Pi2, Beaglebone Black, MinnowBoard MAX, Wandboard Quad이다. 참고로 Yocto Project Developer Day에 가면 Beaglebone Black, MinnowBoard MAX, Wandboard Quad 3개 중에 1개를 선택해서 참석자들에게 관련 악세서리와 함께 준다. OpenEmbedded의 layer들이 있는 http://layers.openembedded.org/layerindex/branch/master/layers/에 가서 BSP로 filter해 보면 BSP 관련 meta layer들이 나온다. 하지만 모두..

Yocto 2023.04.19

Cross-Development Toolchain Generation in Yocto Project (OE)

다음은 Yocto Project Reference Manual 4장의 일부 글이다. 기본적으로 Yocto Project (OE)에서는 cross toolchain을 직접 빌드하여 만든다. 다음은 Yocto Project (OE)를 이용하여 host에서 cross toolchain을 생성하는 단계이다. gcc -> binutils-cross -> gcc-cross-initial -> linux-libc-headers -> glibc-initial -> glibc -> gcc-cross -> gcc-runtime gcc: The build host's GNU Compiler Collection (GCC). binutils-cross: The bare minimum binary utilities needed ..

Yocto 2023.04.19

Yocto Project with Beaglebone Black (비글본 블랙)

Yocto Project에서 빌드된 결과물을 비글본 블랙 보드에 이미지를 넣는 방법에 대해서 설명한다. 이 방법은 Yocto Project의 Reference Platform인 Poky, http://git.yoctoproject.org/cgit/cgit.cgi/poky를 받으면 README.hardware, http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/README.hardware에 자세히 나와 있다. 기본적으로 beaglebone은 Yocto Project의 Reference 보드 중에 하나이다. 빌드할 때 local.conf의 MACHINE을 beaglebone으로 변경하고 빌드하면 beaglebone 이미지가 나온다. 아래는 README.hardwar..

Yocto 2023.04.18

Yocto Project Developer Day EU 2015

Yocto Project에서는 1년에 약 2회 Developer Day를 개최 한다. 보통 Embedded Linux Conference US (3월 경 샌프란시스코)와 EU (10월 경 유럽) 행사가 끝난 다음날 하루 종일 개최한다. 필자는 작년 Yocto Project Developer Day EU 2014에 참석했고, 올해도 가능하면 참석할 예정이다. 아직 2015에 대한 계획은 나오지 않았지만 https://www.yoctoproject.org/tools-resources/events/yocto-project-developer-day-eu-2015 에서 곧 announce 할 예정이다. 올해도 3월에 샌프란시스코에서 하는 ELC US 2015에는 참석하였으나, 업무 일정상 Yocto Dev. Da..

Yocto 2023.04.18

OpenEmbedded(OE)에 contribution 하는 방법

OpenEmbedded의 openembedded-core와 meta-openembedded 및 기타 meta layer 저장소에 일반적으로 contribution하는 방법이다. 일반적으로 OE는 git으로 관리하며 git을 통해 patch를 메일링 리스트에 제출함으로써 contribution을 한다. 필자도 아래와 같은 방식으로 가끔 contribution을 한다. 또는 필자가 관리하는 meta-gir과 같이 github에서 관리하면 github의 pull request 방식으로도 contribution을 받기도 한다. 아래 내용은 Ubuntu 기준이며 개발자 메일은 gmail 기준으로 작성되어 있다. 1. 기본 설정 (시스템 당 1번) git을 설치한다. $ sudo aptitude install gi..

Yocto 2023.04.18

OpenEmbedded (OE) 에서 지원하는 BSP

OpenEmbedded에서는 다양한 BSP(Board Support package)를 지원하며, 하위의 BSP meta layer만 변경하면 쉽게 그 BSP에 맞는 리눅스 이미지를 생성할 수 있도록 설계되어 있다. 하지만 하위의 BSP meta layer가 OE에 맞도록 잘 설계 되어 있다는 가정이다. 본 글에서 설명하는 개발 보드들은 지속적으로 유지보수 되고 있어 OE와 붙여서 실제 개발도 할 수 있고, 일반적으로 우리가 많이 알고 있는 보드들이다. 아래 3가지는 Yocto Developer Day에서 실습 보드로 사용할 정도로 호환이 잘 되고 있다. 참고로 일반적으로 Yocto Dev. Day는 Embedded Linux Conference에 맞춰 마지막 다음날 하루 코스로 진행되며 Basic과 Ad..

Yocto 2023.04.18
728x90
반응형