본문 바로가기

Yocto5

레이어와 레시피가 있기 때문에 툴을 쉽게 설치할 수 있다. 이전 장에서 local.conf 에 패키지를 추가하는 방법에 대해서 알아봤다. 단순히 패키지 정보를 입력한다고 설치할 수 있는 것은 아니다. 추가한 패키지(예:bc)가 meta 레이어의 어느 곳에서 레시피로 저장되어 있기 때문에 쓸 수 있는 것이다. poky/meta/recipes-extended 에 bc 폴더가 있고 그 안에 bb 파일이 저장되어 있다. 해당 bb에는 소스를 다운로드 링크와 빌드 옵션도 기술되어 있다. 이처럼 레시피로 가지고 있으므로 사용자는 해당 레시피의 이름을 추가하기만 하면 자동으로 소스코드 설치가 이루어질 수 있다. 2022. 9. 24.
Local.conf 수정하여 툴 추가 설치하기 poky를 git에서 받아 설치한다. 아래와 같이 환경설정한다. source poky/oe-init-build-env [build Directory name] build 폴더 안에 conf/local.conf에서 머신을 지정한다. 기본 qemux86으로 지정되어 있지만, qemuarm으로 지정했다. 아래는 리눅스 커널와 파일시스템을 빌드하는 명령어다. bitbake core-image-minimal [build DIR]/tmp/deply안에 images가 생성된다.\ 아래는 SDK를 빌드하는 명령어이다. bitbkae core-image-minimal -c populate_sdk [build DIR]/tmp/deply안에 sdk가 생성된다. bitbake core-image-minimal 입력하여 빌드완.. 2022. 9. 24.
Yocto 패키지 구성하기 Yocto에서 가벼운 리눅스 이미지를 bitbake core-image-minimal 를 실행하여 만들 수 있다고 하지만 정작 실행하면 수많은 모듈을 생성하느라 시간이 몇시간은 걸린다. busybox와 C/C++ 어플리케이션이 동작하는 정도의 임베디드 리눅스 이미지라면 필요없는 모듈은 만들지 않는 것이 타당하겠다. 예를 들어, python을 사용하지 않을 경우, 파일 시스템에서 python을 제거해야 한다. 이를 위해 yocto에서는 패키지 구성을 설정할 수 있다. 이를 위해 아래 키워드를 알아보자. IMAGE_INSTALL IMAGE_FEATURES DISTRO_FEATURES CORE_IMAGE_EXTRA_INSTALL IMAGE_INSTALL 해당 변수에 수납한 패키지를 설치하는 용도로 사용한다. .. 2022. 9. 19.
툴체인 만들기 호스트에서 타겟 전용 어플리케이션을 만들 때, 툴체인이 필요하다. bitbake에서 툴체인을 만드는 방법은 두 가지가 있다. 1) bitbake meta-toolchain 2) bitbake -c populate_sdk bitbake meta-toolchain은 필요최소한의 Cross 구축환경을 만들 수 있다. 리눅스 커널이나 부트로더를 구축하는 정도라면 meta-toolchain에서 만든 sdk를 사용하면 충분하다. bitbake 이미지이름 -c populate_sdk 를 실행한 경우, 타겟에서 동작하는 APP을 구축하기 위해 필요한 라이브러리, 헤더 파일을 포함한 환경을 만들 수 있다. APP 개발자에게 적합하다. 2022. 9. 19.