webOS 개발환경 구성하기2 - 리눅스에서 직접 빌드 및 플래싱하기

이하정·2021년 6월 23일
0

webOS

목록 보기
4/7

이번 포스팅에서는 리눅스pc를 통해 직접 빌드해보는 과정에 대해 포스팅해보겠습니다. 빌드를 하는 것은 플랫폼 자체를 빌드하는 것입니다. 따라서 플랫폼에 변경사항이 생겼을 경우에 빌드를 하게됩니다. 만약 어플리케이션 개발만을 원하는 경우, 빌드된 이미지를 사용해도 됩니다. 빌드된 이미지를 다운받으려면 다음의 링크를 참고하세요!
webOS 개발환경 구성하기2 - 빌드, 플래싱, 실행하기

빌드는 리눅스 pc에서만 가능하므로 윈도우나 맥pc만 갖고 계신분들 께서도 위의 링크로 넘어가 주시면 될 것 같습니다.

webOS OSE 빌드하기


webOS OSE는 다양한 component들로 이루어져 있습니다. 모든 component를 갖고 있는 것은 어렵기 때문에 빌드 시에 해당되는 것들의 조립서와 같은 역할이 필요합니다.

webOS OSE는 빌드시스템으로 yocto를 사용합니다. yocto는 빌드시 레시피와 같은 주문서를 갖고 레시피에 필요한 소스들을 모두 가져와 빌드를 하고 결과를 조합해 이미지를 생성합니다.

$ git clone https://github.com/webosose/build-webos.git
$ cd build-webos

git을 사용하여 webOS를 빌드하기 위한 저장소를 클론을 합니다.

$ sudo scripts/prerequisites.sh
$ cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l
$ cat /proc/cpuinfo | grep "cpu cores" | uniq

physical CPUs의 수 / 각 physical CPU에서 core의 수를 알아보는 과정입니다.

두 값을 곱하면 physical CPU cores의 수를 알 수 있습니다.

$ ./mcf -p <number of physical CPU cores / 2> -b <number of physical CPU cores / 2> raspberrypi4

./mcf명령어를 통해 빌드를 하기 위한 설정들을 가져옵니다. target device인 raspberrypi4에 빌드를 하기 위한 리소스들을 내려받아 호스트 PC에 저장합니다.

$ source oe-init-build-env

호스트 pc를 webOS를 빌드하기 위한 환경으로 바꿉니다.

$ bitbake webos-image

bitback명령어를 통해 빌드를 합니다. 따라서 webos-image를 빌드하게 됩니다.

빌드가 성공적으로 완료되면 다음과 같은 이미지 파일이 생성됩니다.
BUILD/deploy/images/raspberrypi4/webos-image-raspberrypi4.rootfs.wic

webOS OSE 플래싱하기


앞에서 생성한 이미지 파일을 sd카드에 플래싱하는 과정이 필요합니다. 쉽게 말해 sd카드에 이미지를 올리는 작업입니다.

라즈베리파이는 sd카드에 이미지를 플래싱한 후 하드웨어에 삽입하면 부팅이 된다.

$ cd <path where the image is located>
$ sudo fdisk -l
$ sudo umount /dev/sd<xN>
$ sudo dd bs=4M if=./<webOS OSE image> of=/dev/sd<x>
$ sudo umount /dev/sd<xN>

0개의 댓글