달력

112024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

※ 출처 : makersweb(https://makersweb.net/embedded/13896) 에서 가져온 글

※ QT 또는 Embedde 관련 검색을 하다 보면 makersseb 의 글들이 간간이 보인다. 나한테는 나름 유용한 사이트이다. ^^

 

비트베이크 (bitbake):

포키 빌드 시스템의 태스크 스케줄러이다. 메타데이터를 파싱하고 태스크로 만들어 관리한다.

 

Metadata:

이미지를 빌드 할 때 BitBake가 분석하는 파일들을 말한다. 일반적으로 메타 데이터에는 레시피(.bb와 .bbappend파일), 클래스(.bbclass파일), 그리고 환경설정(.conf파일)이 있다.

 

poky:

Pah-kee로 발음되는 "poky"라는 용어는 여러 가지 의미가 있다. 가장 일반적인 의미에서, poky는 OpenedHand가 처음 개발 한 오픈 소스 프로젝트이다. OpenedHand는 기존의 OpenEmbedded 빌드 시스템에서 벗어나서 임베디드 리눅스 용으로 상업적으로 지원 가능한 빌드 시스템을 만들었다. poky 프로젝트는 Yocto Project의 빌드 시스템의 기초가 되었다. 

마지막으로, "poky"는 Yocto Project를 poky 저장소와 함께 사용하여 이미지를 빌드할 때 생성되는 기본 DISTRO (즉, 배포판)을 나타낼 수 있다.

 

Classes:

로직 캡슐화 및 상속을 제공하는 파일로 일반적으로 사용되는 패턴을 한 번 정의한 다음 여러 레시피에서 쉽게 사용할 수 있다.

Classes 파일은 .bbclass 파일 이름 확장자로 끝난다.

 

Configuration File(xxx.conf):

다양한 .conf 파일의 설정 정보는 변수의 전역 정의를 제공한다. Build Directory의 conf/local.conf 설정 파일에는 모든 빌드에 영향을 주는 사용자 정의 변수가 들어 있다.

meta-poky/conf/distro/poky.conf 설정 파일은 이 정책으로 빌드 할 때만 사용되는 Yocto "distro"설정 변수를 정의한다.

설정 파일은 .conf 파일 이름 확장명으로 끝난다.

 

Recipe:

패키지를 빌드하기 위한 명령어 세트.

레시피는 소스 코드를 어디에서 얻을 수 있는지, 적용 할 패치, 소스 설정 방법, 컴파일 방법 등을 설명한다. 

레시피는 또한 library 또는 다른 레시피에 대한 의존성을 설명한다.

레시피은 실행 논리 단위, 빌드 할 소프트웨어, 빌드 할 이미지를 표현하고, .bb 파일 확장명을 사용한다.

 

Image:

이미지는 레시피 모음 및 관련 메타 데이터가 제공된 BitBake 빌드 프로세스의 결과물(자동생성데이터)이다.

이미지는 특정 하드웨어 또는 QEMU에서 실행되는 바이너리 output이며 특정 유스케이스에 사용된다.

 

Layer:

core, BSP 또는 애플리케이션 스택을 나타내는 레시피 모음.

 

oe-init-build-env:

OpenEmbedded 빌드 환경을 설정하는 스크립트파일이다.

'karma( 업 ) > YOCTO' 카테고리의 다른 글

빌드 시스템-Yocto  (0) 2022.02.23
YOCTO 준비하기 - wsl2 에 Docker 설치하다.  (1) 2021.12.21
YOCTO 준비하기-win10에 wsl2 설치하다.  (0) 2021.12.20
Posted by 생짜
|

처음에 등장한 빌드 시스템은 uClib 프로젝트에 기원을 둔 빌드루트(buildroot)다.
빌드루트 초기 목표는 테스트로 uclibc 라이브러리 기반의 루트 파일 시스템을 생성하는 것이다.
빌드루트는 설정 도구로 kconfig와 Makefile 구조에 기반을 두고 있다. 빌드하기 전에 여러 소프트웨어 패키지에 
패치를 적용한다. 요즘 빌드루트는 여러 아키텍처를 지원하고 루트 파일 시스템, 커널, 부트로더 이미지를 빌드할 수 있다.


이후에 오픈임베디드(OpenEmbedded)가 나타났다. 리눅스 배포판 빌드를 위한 것이기 때문에 목적이 약간 달랐다. 오픈임베디드는 비트베이크(bitbake)빌드 엔진에 의해 해석한 레시피(recipe)에 기반을 둔다. 비트베이크는 Portage(젠투의 배포 패키지 관리자)에서 파생한 도구다. 오픈임베디드의 특징으로는 패키지들 사이에 의존성을 지정할 수 있고 나중에 비트베이크가 모든 레시피를 파싱하고 의존성을 만족하는 올바른 순서로 태스트( 오픈 임베디드에서 일의 단위) 큐를 생성한다는 점이다. 오픈임베디드로 만든 배포판으로는 Angstrom과 OpenMoko가 있다.

또 다른 오픈임베디드에 기반을 둔 배포판은 포키(Poky)리눅스이다. 포키는 욕토가 배포하는 방식으로 욕토 프로젝트의 레퍼런스 시스템이며, 툴과 메타데이터의 집합으로 구성된다.
포키는 욕토의 빌드 시스템이고 바탕에 오픈임베디드 코어 메타데이터(레시피, 클래스, 설정 파일)와 비트베이크 빌드 엔진을 사용한다.

욕토 프로젝트는 리눅스 기반의 임베디드 시스템 빌드에 도움을 주는 도구를 제공하는 것을 목표로 하는 오픈소스 프로젝트이다. 욕토 프로젝트 아래 포키, 비트베이크 빌드 엔진, 오픈임베디드 코어 같은 여러 소프트웨어 프로젝트가 있다. 

Posted by 생짜
|

전 시간에 windows10에 wsl2를 설치해 봤다.

오늘은 wsl에 Docker를 설치해 보자

 

windows에 Docker를 설치하기 전에 간략하게 '생활코딩' 을 통해 Docker가 무엇인지 알고 넘어가자

 

https://opentutorials.org/course/128/8657

 

Docker - 생활코딩

소개 가상 머신처럼 독립된 실행환경을 만들어주는 도구. 마치 운영체제에 운영체제를 설치하는 것처럼 실행 된다. 하지만 운영체제는 실제로 설치되지 않기 때문에 설치 용량이 적고 빠르다. 

opentutorials.org

 

 

Docker가 무엇인지 살펴보았다면 Docker 사이트에 접속하여 windows 용 Docker를 다운받자

https://hub.docker.com/editions/community/docker-ce-desktop-windows

 

Docker Desktop for Windows by Docker | Docker Hub

Docker Desktop for Windows Docker Desktop for Windows is Docker designed to run on Windows 10. It is a native Windows application that provides an easy-to-use development environment for building, shipping, and running dockerized apps. Docker Desktop for W

hub.docker.com

 

링크에 접속하여 빨간 박스의 'Get Docker Desktop' 버튼을 클릭하면Docker Desktop Installer.exe’  파일을 다운로드 받을 수 있다.

 

'Docker Desktio Installer.exe 파일을 실행 시켜 Docker를 설치를 시작하면 아래와 같이 설치 파일들을 다운받기 시작한다.

 

설치 파일을 다운이 완료되면 설치를 시작한다. 체크박스는 변경하지 않고 'ok' 버튼을 클릭하여 설치를 시작한다.

 

설치가 끝난 후 'Close and log out' 버튼을 클릭하면 windows를 재시작한다.

 

windows가 재부팅 한 후 시작 버튼에 Docker가 설치된 것을 확인 할 수 있다.

 

Docker 설치를 확인 했다면 클릭하여 Docker를 실행 시킨다. Docker가 실행되면 아래와 같이 체크박스를 체크 한 후 'Accept' 버튼을 클릭하여 Docker 엔진을 실행 시킨다.

 

Docker 엔진 start가 끝나면 간단한 tutorial 시작 화면이 나온다. 이 화면에서 'start' 버튼을 클릭하여 tutorial을 시작할 수도 있고 skip 할 수도 있다. 

만약 'Start' 버튼을 눌러 tutorial을 시작했다면 아래와 같이 몇 개의 tutorial 화면을 볼 수가 있다.

 

Docker를 실행 시킨 후 우측 상단의 톱니바퀴를 클릭하여 설정을 시작한다.

'General'탭의 밑에서 두번째에 위치한 'Use the WSL 2 based engine' 항목에 체크해주고 다음으로 왼쪽 사이드바에서 Resource > WSL Integration 메뉴로 이동한다. ’Enable Integration with my default WSL distro’체크되어있는지 확인후 체크,  'Ubuntu' 항목을 활성화시킨다. 오른쪽 아래의 Apply & Restart 버튼을 클릭해주면 도커 엔진이 재실행된다.

 

Docker가 제대로 설치 및 설정되었는지 확인해 보자. Windows Terminal을 열어서 간단한 테스트를 진행한다. terminal 탭을 하나 열고 wsl 명령어로 Docker 전용 머신이 실행중인 것을 확인해보자. 

 

설치된 Docker의 버전을 확인한다.

 

마지막으로 wsl2를 열고 docker 설치를 확인한다.

모든 과정을 끝내고 wsl2에 docker가 성공적으로 설치되었는지까지 확인하였다. 

'karma( 업 ) > YOCTO' 카테고리의 다른 글

YOCTO, 몇 가지 중요한 용어 및 개념  (0) 2022.02.23
빌드 시스템-Yocto  (0) 2022.02.23
YOCTO 준비하기-win10에 wsl2 설치하다.  (0) 2021.12.20
Posted by 생짜
|

아주 잠깐 ( 또는 안할지도 모르지만) YOCTO를 할지도 몰라 미리 공부하기로 했다. 

windows 10 노트북에 wsl2를 설치하고 YOCTO 빌드 시스템을 설정하려고 한다. 타겟은 라즈베리파이 B+ 이다.

wsl2 설치하면서 몇 가지 실수를 했다. 사람은 한번 한 실수를 두, 세 번 반복한다.  

설치하는 방법은 아래 MS 사이트에 잘 나와 있고 

https://docs.microsoft.com/ko-kr/windows/wsl/

 

Linux용 Windows 하위 시스템 설명서

Linux용 Windows 하위 시스템 설명서를 살펴봅니다.

docs.microsoft.com

 

몇 가지 다른 사이트도 좀 참고했다.

https://webnautes.tistory.com/1170

 

WSL 2 ( Windows Subsystem for Linux ) 를 사용하여 Ubuntu 20.04 설치 하는 방법

Windows 10에 wsl2 ( Windows Subsystem for Linux )를 설치한 후, Ubuntu 20.04를 설치한 과정을 다루고 있습니다. 2017. 12. 15 최초작성 2021. 05. 19  2021. 08. 01 최종작성 "Windows Subsystem for Linux"..

webnautes.tistory.com

https://bebutae.tistory.com/127

 

WSL2[1] - WSL2 및 우분투 설치하기

안녕하세요. 이버엔 WSL2에 대한 포스팅으로 돌아왔습니다. 1. WSL2란? Windows Subsystem for Linux2의 줄임말인 WSL2는 2020년 5월경 Windows 10 대규모 업데이트를 통해 정식 릴리즈되었습니다. WSL은 가상화를.

bebutae.tistory.com

https://blog.dalso.org/linux/wsl2/11099

 

Windows10 2004 WSL2 활성화하기. - 달소씨의 하루

앞선글에서 WSL2에 대해 알아봤으니 이번에는 직접 사용하는 윈도우에 설치해보려고합니다.참고로 wsl2를 사용해도 vmware, virtual box 모두 사용가능합니다. 설치 조건 설치조건은 당연히 정식지원

blog.dalso.org

 

 

wsl에서 wsl2로 버전하는 이유중 가장 큰 이유는 Docker를 사용할 수 있기 때문이란다.

첫 번째로 할 일은 내 윈도우의 버전을 확인 해야 한다.

Windows 10 버전 2004 이상(빌드 19041 이상) 또는 Windows 11에서 wsl2를 설치 할 수 있다.

다행이도 마지막 업데이트에서 wind10 '19041' 이상 버전으로 업데이트되어 설치할 수 있게 되었다.

그 다음 MS Store에서 'windows terminal' 을 설치한다. 

terminal을 설치했다면 아래 명령어를 순차적으로 실행하고 재부팅 한다.

 

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

 

재부팅 후 MS Store에서 Ubuntu를 설치한다. 나는 'Ubuntu 18.04 LTS'를 설치했다.

우부투를 설치 후 ID/PW를 설정한다.

wsl2 커널을 설치하고 wsl를 wsl2로 변경한다.

 

간략하게 다시 정리하면

  1. wsl2를 설치할 수 있는 windows10 버전인지 확인
  2. MS store에서 windows terminal 다운로드
  3. MS store에서 Ubuntu 다운로드( 사용할 버전 선택 )
  4. wsl2 설치
  5. ubuntu 실행하여 로그인 정보 설정
  6. wsl2로 설정 변경
    1. 이 때 커널 오류가 발생하면 wsl2 커널을 다운받아 설치해야 함

 

 

이 과정에서 나의 경우 아래와 같은 몇 가지 오류가 발생했다.

 

1. MS Store에서 Ubuntu 다운로드 후 실행 시키니 Name / Pass word 설정 화면이 나오지 않았다. 이유는 'windows 10에서 리룩스용 windows 하위 시스템' 을 설정하지 않아서이다. 

 

아래와 같이 두 부분을 설정하면 된다.

 

1) 윈도우키 -> 설정 버튼 -> 설정 검색 창에 'windows 기능 켜기/끄기' 검색 -> Linux용 Windows 하위 시스템 체크
2) 윈도우키 -> 설정 버튼 -> 설정 검색 창에 '개발자 기능 사용' 검색 -> 개발자 모드 켬

 

개발자 모드는 해킹될 가능성도 있기 때문에 wsl2 실행이 다 끝나면 다시 끄는 것이 좋을 듯 하다.

 

2. wsl과 설치한 Unbuntu를 wsl2 버전으로 변환을 시키는데 오류가 발생했다. 결론적으로 말해 변환할 Ubuntu의 배포 이름을 정확히 기술하지 못해서이다.

 

현재 설치된 wsl의 버전을 확인한다.

 

wsl의 기본 버전을 2로 설정한다.

 

설치한 Ubuntu의 버전을 wsl2로 변경하려고 했는데 배포판 이름을 정확히 기술하지 못해 실패했다. 정확히 기술 후 wsl 버전을 다시 확인하니 2로 잘 나와 있다.

 

마지막으로 설치된 Ubuntu 실행하는 방법이다.

  1. 설치한 windows terminal을 실행한다.
  2. 터미널 상단의 아래방향 화살표를 클릭하여 우분투를 실행시켜준다.

 

정상적으로 실행 된 모습

 

다음 번엔 설치한 Ubuntu-18.04 에 Docker를 설치해 보겠다.

'karma( 업 ) > YOCTO' 카테고리의 다른 글

YOCTO, 몇 가지 중요한 용어 및 개념  (0) 2022.02.23
빌드 시스템-Yocto  (0) 2022.02.23
YOCTO 준비하기 - wsl2 에 Docker 설치하다.  (1) 2021.12.21
Posted by 생짜
|