Yocto Project에 대해서 지난해부터 관심을 가져서 오픈소스 공개세미나도 주말에 찾아가보고 했었지만, 막상 실무와 연결이 안되어 있어 진행이 되지 않음.
이제 다시 Yocto를 차@아보는데, RaspberryPi2에 올려보는 걸로 시작합니다.
출발은 http://git.yoctoproject.org/
이전에 기본적인 문서는 대충 살펴보고 시작합니다.
yocto project 구조 openembbeded , poky , bitbake 의 역활에 대해서 시간을 내서 document를 읽어볼 필요가 있음.
1) 14.04 이상 Linux PC를 준비합니다.
문서에 소개되어 있는 빌드에 필요한 다른 툴을 미리 설치합니다.
이제 다시 Yocto를 차@아보는데, RaspberryPi2에 올려보는 걸로 시작합니다.
출발은 http://git.yoctoproject.org/
이전에 기본적인 문서는 대충 살펴보고 시작합니다.
yocto project 구조 openembbeded , poky , bitbake 의 역활에 대해서 시간을 내서 document를 읽어볼 필요가 있음.
1) 14.04 이상 Linux PC를 준비합니다.
문서에 소개되어 있는 빌드에 필요한 다른 툴을 미리 설치합니다.
$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \ build-essential chrpath socat libsdl1.2-dev xterm
2)
git clone -b jethro git://git.yoctoproject.org/poky
cd poky
git clone -b jethro git://git.yoctoproject.org/meta-raspberrypi
앞으로 소개되는 다운로드 주소는 http://git.yoctoproject.org/cgit/cgit.cgi/poky/ 참고합니다.
하위에는 http://git.yoctoproject.org/cgit/cgit.cgi/meta-raspberrypi/ 도 있습니다.
상위 서로 다른 branch를 가져오면 빌드가 안되는 경우가 있음.
krogoth 조합에서는 성공해보지 못했다.-> krogoth 조합에서도 성공
3) 빌드 환경변수를 설정합니다.
이때 source ./oe_init-build-env 형태로 실행해야 환경변수가 현재 console shell에 유지가 합니다.
./oe_init-build-env 식으로 하면 안됨.
환경변수를 설정하는 스크립트를 수행하면 build 폴더로 이동하게 되는데
4) bitbake conf를 변경합니다.
build/conf/bblayers.conf 파일을 열고
poky에 추가한 meta-raspberrypi를 더합니다.
build/conf/local.conf 를 열어 MACHINE변수를 raspberryi2를 변경한다.
컴파일 속도를 개선하기 위해서 Qemu configuration 항목에서 sdl 관련 항목을 주석처리합니다.
MACHINE = "raspberrypi2"
GPU_MEM = "16"
5) SD카드용 이미지 만들기
bitbake rpi-build-image
6) SD용 이미지를 SD fusing 하기
sudo dd if=tmp/deploy/images/raspberrypi2/rpi-basic-image-raspberrypi2.rpi-sdimg of=/dev/sdc bs=4M
7) 추가해보기 ..
댓글