ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • BuildRooot
    카테고리 없음 2023. 9. 6. 16:59

    이미지 파일 생성하기

    BuildRoot란 ? 임베디드 리눅스 시스템을 생성하는 스크립트 덩어리이다. 임베디드 시스템을 소스파일로부터 생성하는 명령어 집합.

     

    git buildroot 다운로드 -> make<config>->make menuconfig->make

     

    make<config> : 나는 make<config> 부분이 이해가 잘 안되었지만 configs 하위 폴더의 파일들 중 하나를 지정, 설정을 하는 명령어라 이해했다.

     

    make menuconfig : 설정을 변경하는 명령어 (직접 해봐야 이해가 갈 것 같단 생각이 들었다...)

    설정 항목들....

    • <BuildRoot top menu>
    • <BuildRoot Build options menu>
      • buildroot 관련 option을 지정할 수 있다.
    • <BuildRoot Toolchain menu>
      • Toolchain 설정을 변경할 수 있다. uClibc, glibc 등에 대한 선택도 가능하다.
        • Toolchain이란 ?
          • Compiler(gcc), Debugger(gdb), Library(glibc), Util(binutils -gcc를 위한 어셈블러, 링커 라이브러리 관련 파일 모음)
        • uClibc란 ?
          • 임베디드 리눅스 전용으로 만들어진 소형 C표준 라이브러리
        • GLIBC란?
          • C언어는  input/output, 메모리관리, 문자열 조작 등의 기능이 없다. #include <stdio.h>와 같은 라이브러리를 GLIBC라한다.
    • <BuldRoot System configuration menu>
      • target system configuration을 지정할 수 있다.
    • <BuildRoot Kernel menu>
      • linux kernel 관련 설정을 할 수 있다(단, kernel config 자체에 대한 설정은 별도의 명령으로 진행함 - 3절 참조)
    • <BuildRoot Target packages menu>
      •  target board에 올라가는 각종 package를 선택 지정할 수 있다.
    • <BuildRoot Filesystem images menu>
      • 사용하고자 하는 root file system을 지정할 수 있다.
        • root file system이란 ?
          • 시스템 초기화 및 관리에 필요한 내용을 담고 있어 부팅에 꼭 필요한 파일 시스템
    • <BuildRoot Bootloaders menu>
      • bootloader를 선택 지정할 수 있다

    메뉴 이미지를 확대해서...단어를 다 찾아보려 했으나 양이 너무 방대..

     

    make : 다운로드, 빌드한다. 부팅 가능한 이미지 파일을 생성하는데 필요한 파일을

     

    Yocto란 ? 

    여러 개의 작업을 하나의 작업 경로 내에서 모두 처리 할 수 있는 간편한 빌드 시스템

    bootloader, 운영체제, 시스템 이미지를 만드는 작업환경

     

    위 4가지 작업 환경을 하나의 경로에서 해결

    NFS Booting하기

    NFS Booting이란 ? 타겟 보드가 충분한 저장공간을 가지지 않았을 때, root filesystem과 다른 필요한 파일을 remote 서버로부터 가져와 부팅하는 것으로 파악된다. 예전에 리눅스 프로젝트에서 소스 편집 후 sd card에 저장 후 빌드시켰는데, remote 서버로부터 가져오는 것 같다.

     

    kernel Configuration

    새로운 config 파일 생성 -> $make linux-menuconfig -> $ make linux-update-defconfig -> make savedefconfig config파일이름

    Custom BSP  관련 작업하기

    BuildRoot에 application 또는 kernel module을 포함하는 방법은 패키지, 오버레이 방식

Designed by Tistory.