자유게시판

bitbake 시간 줄이는 팁
2020. 5. 24 (일) 12:02 자작공작소 조회 80 좋아요 2 스크랩 0 댓글 5

bitbake로 고생하시는 분들이 저 포함해서 많이 계실걸로 생각합니다.

bitbake가 일관성있게 공통의 개발 환경을 구성하게 해주어 편리하지만 그에 대한 대가가 있습니다.

아래는 퀘스트 수행하면서 느끼고 알게 된 점을 서술합니다.

 

1. 처음 가상머신으로 30GB HDD로 시작해 현재 300GB SSD로 교체 하였습니다.

  - 빌드 하면서 사용되는 용량이 많아집니다. 넉넉한 용량이 필수이며 HDD보다는 SSD가 유리합니다.

 

2. 가상머신 보다는 실제 리눅스 시스템이 유리합니다.

 

3. 코어수가 많을수록 유리합니다.

  - 처음 가상머신의 코어수를 1개로 설정하였더니 bitbake 수행시 task가 1개로 실행 되었습니다.

  - 실제 CPU코어가 4개라서 가상머신 코어도 4개로 설정 후 bitbake 수행시 task가 4개로 늘어납니다. (병렬 수행)

 

4. 빌드시에 메모리 용량도 많은 것이 유리합니다. 가상메모리의 메모리량도 증가시켜줍니다.

  - 어떤 글에서는 16BG를 추천하는 내용도 있었으나 실제 설치된 용량이 적어서 형편에 맞게 최대한 많이 설정합니다.

 

5. bitbake시 소스 코드 다운 받아서 작업을 합니다. 네트워크 환경(속도)도 중요합니다.

 - do_fetch, do_unpack은 소스코드를 가져와 작업 폴더에 압축된 소스코드를 풀어줍니다.

 

6. 가상머신에 우분투를 설치하여 사용 중 입니다. 개발 필수 항목이 설치 되어 있으면 좀 더 수월합니다.

 - 빌드 툴 등 필수 모듈과 과제 진행시 필요한 의존성 있는 모듈들이 설치 되어 있으면 build fail을 줄일 수 있습니다.

 

7. bitbake 실패시 해당 <package>만 다시 bitbake를 수행합니다.

 - bitbake 실패시 에러 로고를 살펴보고 recipe파일을 확인 하고 의존성이 있는 모듈을 설치해 줍니다. 시간을 많이 필요로 합니다.

 - bitbake 실패시 bitbake -c clean <package>, bitbake <package>를 실행합니다.

 

퀘스트 진행시 참고하시고 추가 팁이 있으시면 공유 바랍니다.

 

DameKAGA 2020.05.25 10:24 답글  | 
팁이라기보단 개인적인 경험에 코어 4개, 논리 프로세서 8개인 프로세서에서 가상머신 코어를 8개로 설정했더니 bitbake 시에 멈추는 현상이 더 많았습니다. 코어를 4개로 줄이니 괜찮아 지더군요. 아래 댓글 보니 코어가 많이 할당되면서 swap 이 더 크게 잡혀서 그러지 않았나 싶기도 하네요.
생각 2020.05.25 10:01 답글  | 
bitbake openstlinux-eglfs 진행 할때는 가상 PC에 램 6G 로 설정하니 swap 용량이 늘어나지 않고 진행 되었습니다.
생각 2020.05.25 09:58 답글  | 
저도 bitbake가 멈추는 현상이 계속 일어 나서 보니 Swap이 꽉차서 그렇더군요 이거 알기까지 몇일 걸린것 같습니다.
메이슨 2020.05.24 15:28 답글  | 
저는 지금 파티션이 한계라 더 필요하면 weston 빌드를 지워버릴려구요 ㅡㅡ,,, 진작에 파티션 늘릴껄 그랬어요
쌀쌀이 2020.05.24 12:58 답글  | 
저도 120G SDD로 시작했다가 10G가 여유가 있어 괜찮을줄 알았는데, PC가 멈추는 문제가 계속 발생했습니다. 그래서 250G SDD로 변경해서 새로 시작했습니다.

로그인 후
참가 상태를 확인할 수 있습니다.