Course Outline

    시작하기 Buildroot 빌드 시스템 요구 사항 얻기 크로스 컴파일러 용어: 빌드, 호스트, 대상, sysroot 올바른 대상 선택 최소 임베디드 시스템 빌드 및 부팅 결과 파일 시스템 이미지의 내용 병렬 빌드 전체 및 부분 재구축
Buildroot의 설계 목표
  • C 라이브러리 선택: glibc, uClibc 또는 musl?
  • 초기화 시스템: busybox vs sysVinit vs systemd
  • /dev에서 장치 노드 관리
  • 다른 패키지 선택
  • 빌드 지침 이해 Kconfig(Config.in) 파일 구문
  • Buidroot Makefiles에서 사용되는 GNU Make의 기능
  • Config.in 및 *.mk 파일에 대한 스타일 가이드
  • 간단한 Autotools 기반 패키지를 추가하는 방법
  • 스테이징 디렉토리와 대상 디렉토리의 차이점
  • 호스트 패키지의 필요성
  • 종속성과 선택적 기능을 표현하는 방법
  • C 이외의 언어 및 Autotools 이외의 빌드 시스템 지원
  • Makefile 디버깅
  • 단일 패키지 다시 빌드
  • 빌드 결과 분석 빌드 시간이 이렇게 오래 걸린 이유는 무엇입니까?
  • 무엇이 그렇게 많은 디스크 공간을 차지했습니까?
  • 이 패키지를 만든 이유는 무엇입니까?
  • 외부 패키지 트리 구성
  • 애플리케이션 개발자를 위한 워크플로 로컬 소스 디렉터리를 사용하는 방법
  • 빌드 지침 재정의
  • 애플리케이션 디버깅
  • 재구축 속도 향상
  • 빌드 로그 보기
  • 일반적인 크로스 컴파일 문제 처리 크로스 컴파일러에게 친숙하도록 자신만의 소프트웨어를 작성하는 방법
  • 커널 개발자를 위한 워크플로 임베디드 시스템에서 커널이 부팅되는 방법
  • 구성 옵션 변경 및 패치 추가
  • 모듈 로딩 메커니즘
  • 완제품 만들기 시작 시 데몬 실행
  • 사용자 정의 구성 파일 제공
  • 사용 가능한 펌웨어 업데이트 메커니즘
  • 새 Buildroot 버전으로 업그레이드
  • 오픈소스 라이선스 준수
  • Requirements

    • 참가자는 기존 데스크톱(비임베디드) Linux 시스템에 대해 최소 한 번 이상 커널을 구축해야 합니다.
    • 데스크탑 시스템의 Linux 사용자 공간이 어떤 구성 요소로 구성되어 있는지 알고 있습니다.
    • 패치를 생성하고 사용하는 방법을 알고 있습니다.
    • GNU Make, Autotools, 다른 빌드 시스템이 무엇인지 설명할 수 있어야 합니다.
    • 이상적으로는 업스트림 작성자로서 또는 기존의 Linux 데스크톱 배포에서 하나 이상의 Linux 패키지를 유지 관리합니다.
    • 임베디드 개발에 대한 사전 경험은 필요하지 않으며 위에 명시된 기존 Linux 데스크탑에 대한 지식을 대체할 수 없습니다.
     7 Hours

    Number of participants


    Price per participant