2016년 7월 6일 수요일

디바이스 드라이버를 위한 라즈베리파이 2 크로스 컴파일 환경구축

- 크로스 컴파일 -
대부분의 사용자들은 pc환경에서 프로그램 작성 및 컴파일하고 동일한 환경에서 실행한다.
이 때 컴파일을 네이티브 컴파일이라하고 라즈베리용 모듈을 컴파일하여 라즈베리 환경에서 실행. 즉 컴파일은 pc에서 하고 실행은 라즈베리파이에서 동작하는 환경에서 하는데 이렇게 동작하는 환경과 시스템이 다를 때 이 컴파일을 크로스 컴파일이라고 한다.

1. 라즈베리파이 커널 소스 다운로드
 $ git clone --depth=1 https://github.com/raspberrypi/linux //depth의 경우 히스토리는 복제하지 않기때문에 빠르다

2. 툴체인 설치

$ git clone https://github.com/rapsberrypi/ tools
(컴파일러위치는 /tool/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin 이다

3. 소스빌드
$ cd linux
$ KERNEL=kernel7
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcm2709_defconfig

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage modules dtbs

댓글 1개: