webOS Article/0. webOS 개발 준비하기

webOS 시작하기1 : webOS OSE 빌드하기

하이하정 2021. 5. 25. 22:47

 

webOS 직접 빌드하기


webOS OSE(open source edition)은 말 그대로 오픈소스로 공개된 운영체제입니다. 따라서 여러분들이 직접 소스코드를 다운 받으신 다음 빌드하여 사용하실 수 있습니다. 필요한 경우 코드를 수정하거나 원하는 서비스, 기능들을 직접 추가하여 빌드를 진행할 수 있습니다.

 

빌드 시스템으로는 yocto를 사용합니다. 따라서 반드시 Linux 환경이 마련되어 있어야합니다! Linux 환경 구축이 어려운 경우 미리 빌드된 이미지를 다운받아 사용할 수 있으며 본 글의 두번째 파트를 참고 바랍니다!

 

1. 시스템 요구사항

  • 라즈베리파이4
  • microSD카드(8 GB or larger), microSD카드 리더기
  • HDMI-compatible touchscreen using USB interface, with 1920x1080 resolution
  • Micro HDMI to HDMI 케이블
  • Ethernet cable and internet connection
  • (Optional) Input devices such as a keyboard and a mouse
webOS OSE 소스코드로 부터 이미지를 빌드하기 위해서는 리눅스를 사용해야 한다.

 

2. Repository 복제하기: 빌드 프로그램 다운로드

webOS OSE image를 빌드하기 위해 build-webos저장소가 사용됩니다.

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

Git repository에서 복제한 후 cd 명령어를 사용하여 복제된 directory로 이동합니다.

 

 

3. 필수 도구 및 라이브러리 설치, 환경설정

빌드를 하기 위해 먼저 도구와 라이브러리를 설치합니다.

이 과정 없이 진행하면, BitBake에서 오류가 발생할 수 있습니다. 무엇이 부족한지는 알 수 있지만 어떻게 설치하는지 어려움을 겪을 수 있으니 다음 명령어를 사용하여 미리 설치합니다.  

$ sudo scripts/prerequisites.sh

 

 

4. Configuring the Build

 

1. 물리적 CPU 개수 

$ cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l

 

2. 물리적 CPU 코어 개수

$ cat /proc/cpuinfo | grep "cpu cores" | uniq

 

3. 위의 두 값을 곱합니다.

CPU개수 * CPU코어 개수 = 전체 CPU코어개수

 

mcf를 사용하여 target device에 빌드를 구성할 수 있습니다.

$ ./mcf -p <number of physical CPU cores / 2> -b <number of physical CPU cores / 2> <target-device-name>

CORE개수를 2로 나눈 값을 옵션 뒤에 넣으면 됩니다.

라즈베리파이4를 사용하므로, target-device-name에 raspberrypi4를 입력합니다.

$ ./mcf -p 0 -b 0 raspberrypi4

 

 

5. Image 빌드

webos-image: 개발 도구가 없는 image입니다.

webos-image-devel: 다양한 개발 도구가 있는 image입니다.  예) GDB, strace 등

 

webOS 빌드를 시작하려면 다음 명령어를 입력합니다.

$ source oe-init-build-env # 환경변경
$ bitbake webos-image # 빌드

 

또는 아래의 코드를 입력합니다.

$ make webos-image

 

webos-image-devel 빌드는 다음 명령어를 입력합니다.

$ source oe-init-build-env # 환경변경
$ bitbake webos-image-devel # 빌드

 

 

 

6. 생성된 이미지 확인

라즈베리파이4의 경우,

BUILD/deploy/images/raspberrypi4/webos-image-raspberrypi4.rootfs.wic를 확인합니다.

 

 

webOS 빌드된 이미지 다운받기


Linux 환경을 구축하기 어려운 경우, 이미 빌드된 이미지를 다운받아 사용할 수 있습니다.

http://build.webos-ports.org/webosose/raspberrypi4/

 

 

저희는 포스팅 당시 가장 최신 버전인 v2.10.0의 webos-image-raspberrypi4-master-20210401224126.wic. 파일을 받았습니다.

 

 

빌드된 이미지 활용하기

직접 빌드한 이미지, 미리 빌드된 이미지를 라즈베리파이 4에 탑재하여 실행시키는 내용은 다음 포스팅에서 이어서 다루도록 하겠습니다.