문의를 보내주셔서 감사합니다! 팀원이 곧 연락드리겠습니다.
예약을 보내주셔서 감사합니다! 저희 팀 멤버 중 한 분이 곧 연락드리겠습니다.
코스 개요
- 시작하기
- Buildroot을 얻다
- 시스템 요구 사항 빌드
- 크로스 컴파일러 용어: 빌드, 호스트, 타겟, sysroot
- 올바른 타겟 선택하기
- 최소한의 임베디드 시스템 구축 및 부팅
- 결과 파일 시스템 이미지의 내용
- 병렬 빌드
- 전체 및 부분 재건
- Buildroot의 디자인 목표
- 선택해야 할 것들
- C 라이브러리: glibc, uClibc 또는 musl?
- Init 시스템: busybox 대 sysVinit 대 systemd
- /dev에서 장치 노드 관리
- 다른 패키지 선택
- 빌드 지침 이해
- Kconfig(Confog.in) 파일의 구문
- Buidroot Makefiles에서 사용하는 GNU Make의 기능
- Config.in 및 *.mk 파일에 대한 스타일 가이드
- 간단한 Autotools 기반 패키지를 추가하는 방법
- 스테이징 디렉토리와 타겟 디렉토리의 차이점
- 호스트 패키지의 필요성
- 종속성과 선택적 기능을 표현하는 방법
- C 이외의 언어 및 Autotools 이외의 빌드 시스템 지원
- Makefile 디버깅
- 단일 패키지 재구축
- 빌드 결과 분석
- 왜 이렇게 많은 제작 시간이 걸렸을까?
- 왜 이렇게 많은 디스크 공간이 필요했을까?
- 이 패키지는 왜 만들어졌나요?
- 외부 패키지 트리 구성
- 애플리케이션 개발자를 위한 워크플로
- 로컬 소스 디렉토리를 사용하는 방법
- 빌드 지침 재정의
- 애플리케이션 디버깅
- 재구축 속도 향상
- 빌드 로그 보기
- 일반적인 교차 컴파일 문제 처리
- 크로스 컴파일러에 친화적인 자체 소프트웨어를 작성하는 방법
- 커널 개발자를 위한 워크플로
- 임베디드 시스템에서 커널이 부팅되는 방법
- 구성 옵션 변경 및 패치 추가
- 모듈 로딩 메커니즘
- 완제품 만들기
- 시작 시 데몬 실행
- 사용자 정의 구성 파일 제공
- 사용 가능한 펌웨어 업데이트 메커니즘
- 새로운 Buildroot 버전으로 업그레이드
- 오픈소스 라이센스 준수
요건
- 참가자는 기존 데스크톱(비임베디드) Linux 시스템에 대해 최소한 한 번은 커널을 빌드했어야 합니다.
- 데스크톱 시스템의 Linux 사용자 공간이 어떤 구성 요소로 구성되어 있는지 알고 있습니다.
- 패치를 생성하고 사용하는 방법을 알고 있습니다.
- GNU Make, Autotools가 무엇인지, 다른 빌드 시스템이 무엇인지 설명할 수 있어야 합니다.
- 이상적으로는 업스트림 작성자 또는 기존 Linux 데스크톱 배포판으로 최소한 하나의 Linux 패키지를 유지 관리합니다.
- 임베디드 개발에 대한 사전 경험은 필요하지 않으며 위에 명시된 기존 Linux 데스크톱에 대한 지식을 대체하지 않습니다.
7 시간